我有一个与Spring如何处理多个属性占位符相关的问题。如何在Spring xml文件中使用多个属性占位符
我有这部分代码:
<context:property-placeholder location="classpath:dir1/${myapp.system.property}.properties"/>
属性myapp.system.property是定义的系统属性。
例如,如果将其定义为“devsystem”,则会导入devsystem.properties中定义的所有属性,并可用于下面的代码中。
现在我想有他的名字由在devsystem.property文件属性定义的另一个属性文件:
<context:property-placeholder location="classpath:dir1/${myapp.system.property}.properties"/>
<context:property-placeholder location="classpath:dir2/myapp-${myapp.environment}.properties"/>
myapp.environment是在devsystem.properties文件中定义的属性。
停止工作。 Spring无法解析$ {myapp.environment}并且抱怨找不到文件dir2/myapp - $ {myapp.environment} .properties。
有人可以让我知道我做错了什么,我该如何使这工作?
非常感谢。
不能作为在该位置仅在系统属性/环境谘询性质占位符不替换占位符在不同的地点。我建议不要使用自己的属性来使用弹簧配置文件,或者编写一个'ApplicationContextInitializer'来加载不同的属性文件。 – 2014-10-29 07:11:59