在我的应用程序中,spring配置文件导入基于下面的环境属性
<import resource="classpath:/springcontext/text/dao_${environment}.xml" />
我们知道在创建bean(property-placeholder)之前解析spring配置导入。
但我的要求是设置&#34;环境&#34;作为来自java代码的系统属性,因为环境值不是常量,所以必须根据某些逻辑进行设置 在春季配置导入解决之前 我可以以某种方式协助Spring如何归档这个。
答案 0 :(得分:3)
作为@M。 Denium正确地指出,您可以使用Interface ApplicationContextInitializer来满足这种需求
来自Spring Docs
public interface ApplicationContextInitializer
用于初始化Spring的回调接口 刷新之前的ConfigurableApplicationContext。
通常在需要某些程序化的Web应用程序中使用 初始化应用程序上下文。例如,注册 属性源或激活配置文件的上下文 环境。请参阅ContextLoader和FrameworkServlet支持 声明“contextInitializerClasses”context-param和init-param, 分别