简单记录一下 SpringBoot 中 application.yaml 文件中配置信息的书写与获取
定义信息时键和值之间有一个空格
普通信息
定义
email:
user: 11111111111@qq.com
code: sdfasdf
host: asdqewrq
auth:true
获取
- 方式一: @Value()注解
@Component
public class EmailProperties {
@Value("${email.user}")
public String user;
@Value("${email.code}")
public String code;
@Value("${email.host}")
public String host;
@Value("${email.auth}")
public String auth;
}
- 方式二: 通过 @ConfiturationProperties(prefix=“前缀”)
方式一中在获取配置信息时要写多个@Value注解,当配置信息很多时比较麻烦,通过 @ConfigurationProperties()注解时只需要在类上添加该注解即可。
@ConfiturationProperties(prefix="email")
@Component
public class EmailProperties {
public String user;
public String code;
public String host;
public String auth;
}
在使用第二种方式时,要注意 prefix 的值要和配置文件中的前缀名相同,且定义类中的信息时要和配置文件中的键的名字相同,如配置文件中是 user, code, 类中也要是user, code。
数组,集合
定义
# 拦截器路径拦截或者不拦截配置
interceptorconfig:
path:
#该路径下任何类型请求均拦截
include:
- /api/v1/token/api_token
- /api/v1/yibaotong/save
获取
@Component
@ConfigurationProperties(prefix = "interceptorconfig.path") // 配置文件的前缀
public class InterceptorPathBean
{
/*
* 需要拦截的路径
*/
private List<String> include;
}