![](/img/trans.png)
[英]Spring 4: run some initialization code before application context refresh
[英]Execute piece of java code before spring context initialization starts
在我的应用程序中,spring配置文件导入基于环境属性,如下所示
<import resource="classpath:/springcontext/text/dao_${environment}.xml" />
我们知道在创建bean(property-placeholder)之前解析spring配置导入。
但我的要求是将“环境”设置为来自java代码的系统属性,因为环境值不是常量,必须在解决Spring配置导入之前根据某些逻辑设置我能以某种方式协助Spring如何归档这个。
作为@M。 Denium正确指出,您可以使用Interface ApplicationContextInitializer来满足这种需求
来自Spring Docs
公共接口ApplicationContextInitializer
回调接口,用于在刷新之前初始化Spring ConfigurableApplicationContext。
通常在需要对应用程序上下文进行某些编程初始化的Web应用程序中使用。 例如,根据上下文环境注册属性源或激活配置文件。 请参阅ContextLoader和FrameworkServlet支持,分别声明“contextInitializerClasses”context-param和init-param。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.