Spring 如何为不同的环境加载不同的弹簧属性
我有两个属性文件。main.properties文件定义了一个字段 环境=开发Spring 如何为不同的环境加载不同的弹簧属性,spring,properties,placeholder,Spring,Properties,Placeholder,我有两个属性文件。main.properties文件定义了一个字段 环境=开发 文件:${catalina.home}/conf/main.properties WEB-INF/project.${environment}.properties 然而,我得到了这个: 无法打开ServletContext资源[/WEB-INF/project.${environment}.properties] 有人知道如何修复吗?你确定这是可能的吗?如果我没有弄错的话,这些值将被一个BeanFactory
文件:${catalina.home}/conf/main.properties
WEB-INF/project.${environment}.properties
然而,我得到了这个:
无法打开ServletContext资源[/WEB-INF/project.${environment}.properties]
有人知道如何修复吗?你确定这是可能的吗?如果我没有弄错的话,这些值将被一个
BeanFactoryPostProcessor
替换,并且在完成替换之前必须加载属性文件。一条非主题注释:从Spring3.1开始,建议使用依赖于不同实现类的
。
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>file:${catalina.home}/conf/main.properties</value>
<value>WEB-INF/project.${environment}.properties</value>
</list>
</property>