Spring Boot 进阶- Spring Boot如何加载自定义的配置文件?

embedded/2024/10/21 7:50:43/

在这里插入图片描述
  通过之前的分析,我们知道,在Spring Boot 应用默认启动的时候会自动加载resource目录下的application.yml 或者是加载bootstrap.yml 配置文件。这些都是默认的。

  在有些情况下,为了可以更好地区分不同组件的配置文件,我们需要自定义一个配置文件,我们知道,自己创建的配置文件在resource目录中,是无法被Spring Boot 默认配置加载的。所以我们需要结合@PropertySource 注解来加载我们自定义的配置文件。

加载默认的properties后缀的配置

  在我们使用@PropertySource注解之后,如果不进行多余的配置,那么它只能加载properties后缀结尾的配置文件。代码如下,在配置文件中添加@PropertySource注解,并且指定了需要加载的配置文件

  查看@PropertySource源码会发现@PropertySource注解的Value属性是一个数组,也就是说可以加载多个配置文件。而加载配置文件的方式也跟前面提到的方式一样,一种是基于配置类的方式,一种是采用@Value注解的方式。

@Component
@PropertySource(value = {"classpath:custom.properties"})
public class CustomProperties {@Value("${name}")private String name;@Value("${age}")private Integer age;

  配置文件内容。

name=nihui
age=18

  这里我们通过@Value注解引入了配置文件。

如何加载自定义的YML格式的配置文件呢?

  在Y


http://www.ppmy.cn/embedded/118100.html

相关文章

过滤器filter和拦截器Interceptor的区别

拦截器和过滤器都是Web应用开发中常用的控制流机制,它们在处理HTTP请求的过程中起到不同的作用。 拦截器(Interceptor):在Spring MVC等框架中,拦截器是一种预处理器,通常用于对每个HTTP请求在其进入控制器…

如何用Shell命令结合 正则表达式 统计文本中的ip地址数量

文章目录 简介问题回答 简介 IP 地址(Internet Protocol Address)是互联网协议地址的简称,是互联网上为联网的设备(如计算机、服务器、路由器、手机等)分配的唯一标识符。IP 地址的主要功能是实现不同网络设备之间的通…

RabbitMQ是什么?RabbitMQ简介

一:技术背景 假如我们有一个支付服务,支付服务的业务逻辑是:首先支付扣减余额,更新支付单状态,更新订单状态,发短信,给这个用户增加积分。在这个场景下,如果我们使用同步调用通信&am…

【ShuQiHere】深入理解二叉搜索树(Binary Search Tree, BST):结构、操作与代码实现

【ShuQiHere】 🌳 引言 在数据结构的世界里,二叉搜索树(Binary Search Tree, BST) 是一种非常重要且常见的结构。它广泛应用于数据库系统、文件系统、网络路由表和搜索引擎中。通过二叉搜索树,我们可以高效地进行查找…

探索 ShellGPT:终端中的 AI 助手

文章目录 探索 ShellGPT:终端中的 AI 助手背景介绍ShellGPT 是什么?如何安装 ShellGPT?简单的库函数使用方法场景应用常见问题及解决方案总结 探索 ShellGPT:终端中的 AI 助手 背景介绍 在当今快速发展的技术领域,命…

Java | Leetcode Java题解之第436题寻找右区间

题目&#xff1a; 题解&#xff1a; class Solution {public int[] findRightInterval(int[][] intervals) {int n intervals.length;int[][] startIntervals new int[n][2];int[][] endIntervals new int[n][2];for (int i 0; i < n; i) {startIntervals[i][0] inter…

JavaEE:探索网络世界的魅力——玩转UDP编程

文章目录 UDPUDP的特点UDP协议端格式校验和前置知识校验和具体是如何工作的? UDP UDP的特点 UDP传输的过程类似于寄信. 无连接: 知道对端的IP和端口号就直接进行传输,不需要建立连接.不可靠: 没有确认机制,没有重传机制,如果因为网络故障导致该段无法到达对方,UDP协议也不会…

UDP Socket聊天室(Java)

UDP聊天室&#xff1a;循环的发送字 通过while循环&#xff0c;文字一直可以发送 dp.getData()是获取DatagramPacket中存储的数据的字节数组。 发送端&#xff1a; package TseUDP;import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.Inet…