【发布时间】:2015-09-17 07:03:08
【问题描述】:
在我的应用程序中,spring 配置文件导入基于如下环境属性
<import resource="classpath:/springcontext/text/dao_${environment}.xml" />
正如我们所知,spring 配置导入是在 bean(属性占位符)创建之前解决的。
但我的要求是从 java 代码中将“环境”设置为系统属性,因为环境值不是恒定的,它必须基于一些逻辑来设置 在解决弹簧配置导入之前 我能以某种方式协助 Spring 归档它吗?
【问题讨论】:
-
您是在谈论 Web 应用程序还是独立应用程序,您使用的是基于 java 的配置还是基于 xml 的
-
感谢您的回复。它的 Web 应用程序和基于 xml 的配置
-
这就是接口
ApplicationContextInitializer存在的原因。创建一个实现,注册它并完成。另外你真的需要在代码中做吗...为什么不简单地将spring.profiles.active设置为环境变量? -
也不要将其设置为来自
ApplicationContextInitializer的java系统属性,您可以简单地指定哪个配置文件处于活动状态