spring boot分环境导出自定义xml配置
2018-03-02 11:01
846 查看
背景介绍:
由于新的spring boot项目需要使用老的jar包,老的jar包的配置是用xml方式配置的,而且开发development、测试test、集成off、正式production环境都会有所不同,这种时候我们就需要让spring boot 分环境加载不同的xml配置文件。
方案简介:
spring boot的 @ConditionalOnProperty注解可以让我们根据条件加载@Configuration配置;@ImportResource注解可以导入xml配置文件;application-环境.yml方式可以给不同的环境配置不同的属性值。结合这3个特性,我们可以实现分环境加载xml配置文件的目的。
具体实践步骤:
(1)在application-development.yml中加入配置:importEnv: development
(2)在application-test.yml中加入配置:importEnv: test
(3)将要分环境加载的xml配置分为多个文件,每个文件中写各自环境相关的配置,例如:spring-development.xml,spring-test.xml
(4)加入配置类
测试:
在application.yml配置中修改环境变量启动,可以看到不同的环境加载了不同的配置
由于新的spring boot项目需要使用老的jar包,老的jar包的配置是用xml方式配置的,而且开发development、测试test、集成off、正式production环境都会有所不同,这种时候我们就需要让spring boot 分环境加载不同的xml配置文件。
方案简介:
spring boot的 @ConditionalOnProperty注解可以让我们根据条件加载@Configuration配置;@ImportResource注解可以导入xml配置文件;application-环境.yml方式可以给不同的环境配置不同的属性值。结合这3个特性,我们可以实现分环境加载xml配置文件的目的。
具体实践步骤:
(1)在application-development.yml中加入配置:importEnv: development
(2)在application-test.yml中加入配置:importEnv: test
(3)将要分环境加载的xml配置分为多个文件,每个文件中写各自环境相关的配置,例如:spring-development.xml,spring-test.xml
(4)加入配置类
@Configuration public class ResourceConfig { @Configuration @ConditionalOnProperty(name = "importEnv", havingValue = "development") @ImportResource(locations={"classpath:spring-development.xml"}) class ResourceDevelopment{ @Bean public Test test(){ System.out.println("==================development========================="); return new Test(); } } @Configuration @ConditionalOnProperty(name = "importEnv", havingValue = "test") @ImportResource(locations={"classpath:spring-test.xml"}) class ResourceTest{ @Bean public Test test(){ System.out.println("==================test========================="); return new Test(); } } }
测试:
在application.yml配置中修改环境变量启动,可以看到不同的环境加载了不同的配置
#spring active env spring: application: name: test1 profiles: active: development
相关文章推荐
- SpringBoot application.yml logback.xml,多环境配置,支持 java -jar --spring.profiles.active
- 玩转Spring Boot 自定义配置、导入XML配置与外部化配置
- 2、spring-boot 工程配置——配置文件详解:自定义属性、随机数、多环境配置等
- SpringBoot application.yml logback.xml,多环境配置,支持 java -jar --spring.profiles.active(转)
- 3.Spring Boot + Security初步使用(覆盖配置的两种方式 配置类和XML注入以自定义页面为例)
- Spring Boot - 自定义属性及多环境配置
- Spring Boot配置文件详解:自定义属性、随机数、多环境配置
- 5.玩转Spring Boot 自定义配置、导入XML配置与外部化配置
- spring boot多环境配置
- Spring Boot-配置文件-多环境配置
- Spring boot 集成工作流flowable去掉xml配置
- Spring Boot多环境配置
- springboot多环境配置文件
- Spring3自定义环境配置 <beans profile="">
- spring boot之@Profile模拟开发环境灵活配置(5)
- Spring Boot基础教程——配置文件-多环境配置
- SpringBoot如何导入自定义配置的yml文件
- SpringCloud SpringBoot mybatis 分布式微服务(二十)Spring Boot 自定义配置文件
- springboot自定义springmvc配置的使用类WebMvcConfigurerAdapter
- (六)、SpringBoot 自定义配置属性,可以在application.properties中修改