在Java类中,如何获取application.yml
的配置内容呢?具体实现如下:
前提
用到的yml文件有application.yml
、application-access-dev.yml
、application-access-devSjzd.yml
,其中application.yml
是我的主配置文件,application-access-dev.yml
定义了开发环境相关配置,application-access-devSjzd.yml
是我的相关字典配置信息。
代码
1.application.yml
spring:
profiles:
active: access-dev
2.application-access-dev.yml
#spring配置
spring:
profiles:
include: access-devCustom,access-devFinance,access-devSjzd
即,包含我的application-access-devSjzd.yml
字典配置文件。
3.application-access-devSjzd.yml
rz:
driver:
site: www.4spaces.org
name:
- michael
- 四个空格
gender: {'1':'男', '2':'女'}
4.JwRzSubPsDriverCaseService.java
@ConfigurationProperties(prefix = "rz.driver")
@Service
public class JwRzSubPsDriverCaseService{
private String site; // String类型
private List name; // List类型
private Map<String, String> gender; // Map类型
// getter 和 setter方法必须添加
}
注意:
@ConfigurationProperties
:是你的配置文件变量定义前缀;- getter 和 setter方法必须添加;
更新:2021年8月11日,建议扩展阅读: Spring Boot通过注解读取配置文件内容的几种方式?。