springboot 读取 yml 配置文件的几种方式
springboot 读取 yml 配置文件的几种方式前言:在springboot 项目中一般默认的配置文件是application.properties,但是实际项目中我们一般会使用application.yml 文件,下面就介绍一下在springboot 中读取 yml 配置的几种方式.一、yml文件YAML语法基本介绍1、以缩进代表层级关系2、缩进不能使用tab,只能用空格3、空格个数不重要
前言:
在springboot 项目中一般默认的配置文件是application.properties,但是实际项目中我们一般会使用application.yml 文件,下面就介绍一下在springboot 中读取 yml 配置的几种方式.
一、yml文件YAML语法基本介绍
1、以缩进代表层级关系
2、缩进不能使用tab,只能用空格
3、空格个数不重要,但是同一层级必须左对齐
4、大小写敏感
5、数据格式为,名称:(空格)值
6、注释单行用#,只能注释单行
二、YAML支持的数据格式
字面量:数字、字符串、布尔等不可再分的值
字符串默认不需要加单引号或者双引号,如果加双引号,它不会转义字符串里面的特殊字符,而加单引号,则会转义字符串里面的特殊字符,意思就是将特殊字符直接变为字符串输出。
例如:
key1: hbc
key2: true
对象:即为键值对,key= value
用冒号分隔键值对(Key: Value), Key需要顶格写,前面不能有空格,冒号后面需要有一个空格然后再跟值, 相同的缩进属于同一个map。
例如:
server:
port: 8888
servlet:
context-path: /
数组:一组按顺序排列的值
用-来表示数组中的一个元素。
例子:
wechat:
mp:
configs:
- appid: appid1
secret: arr1_secret
token: arr1_token
aesKey: arr1_key
msgDataFormat: JSON
- appid: appid2
secret: arr2_secret
token: arr2_token
aesKey: arr2_key
msgDataFormat: JSON
三、读取yml配置文件
1、第一种读取方式@value
如果我们只需要配置文件中的一两个值,@Value 是最简单方便的方式.
yml文件中的配置
server:
port: 8081
使用方法:
@Value("${server.port}")
public String port;
2、第二种读取方式@ConfigurationProperties
user:
salt: 12345678
javabean:
@ConfigurationProperties("user")
@Component
public class Salt {
private String salt;
public String getSalt() {
return salt;
}
public void setSalt(String salt) {
this.salt = salt;
}
}
使用@ConfigurationProperties方式上述完成后,使用@Autowired引入即可。
3、第三种读取方式@Environment
yml文件中的配置
server:
port: 8080
代码:
@Autowired
private Environment env;
@Test
public void test() {
System.out.println(env.getProperty("server.port"));
}
更多推荐
所有评论(0)