扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
背景介绍:
创新互联自2013年创立以来,是专业互联网技术服务公司,拥有项目成都网站建设、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元潍城做网站,已为上家服务,为潍城各地企业和个人服务,联系电话:13518219792由于新的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
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流