繁体   English   中英

在spring上下文初始化开始之前执行一段java代码

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM