springboot解析自定义yml
在实际项目开发中我们经常需要用到一些自定义配置,并且希望单独配置,方便维护,现在介绍下方式:
方式一手动加载
对于一些不变动的配置,写死在项目中维护,如下
然后在启动类中加载该配置
'''
public class AAApplication {
public static void main(String[] args) {
SpringApplication.run(RecommendApplication.class, args);
}
@Bean
public static PropertySourcesPlaceholderConfigurer properties() {
PropertySourcesPlaceholderConfigurer configurer = new PropertySourcesPlaceholderConfigurer();
YamlPropertiesFactoryBean yaml = new YamlPropertiesFactoryBean();
yaml.setResources(new ClassPathResource("siteuid-config.yml"));
configurer.setProperties(yaml.getObject());
return configurer;
}
}
注意:如果是启动配置是properties文件,这里是无法加载yml,需要将配置的siteuid-config.yml转成siteuid-config.properties
方式二集成springcloud config
集成springcloud config后,默认根据应用名加载,如果需要加载多配置,需要修改相关配置:
spring:
application:
name: quote
profiles:
active: dev
cloud:
config:
profile: dev
name: quote,siteuid-config
enabled: true
discovery:
service-id: config-server
enabled: true