我目前使用以下两个文件(Web.xml& MyListener.java)设置我的Spring配置文件。我设置了" MyProfile"管理控制台中的变量值为JNDI,一切正常。
但我想知道是否有办法通过applicationcontext.xml实现这一目标。我可以从管理控制台读取JNDI值,如下面的applicationcontext.xml中所示,但不确定Spring是否有办法在xml文件中设置配置文件。
提前致谢!
Web.xml中
<context-param>
<param-name>contextInitializerClasses</param-name>
<param-value>MyListener</param-value>
</context-param>
public class MyListener implements ApplicationContextInitializer<ConfigurableApplicationContext> {
public void initialize(ConfigurableApplicationContext applicationContext) {
String actProfile = applicationContext.getEnvironment().getProperty("MyProfile");
applicationContext.getEnvironment().setActiveProfiles(actProfile);
}
}
的applicationContext.xml
<jee:jndi-lookup id="MyProfile" jndi-name="MyProfile"/>
答案 0 :(得分:0)
不直接回答您的问题,但您可以通过JVM属性设置配置文件:
-Dspring.profiles.active=YOUR_PROFILE_NAMES_AS_COMMA_SEPARATED_LIST