spring - <context:property-placeholder>加载多个属性但忽略丢失的属性

时间:2016-06-21 10:42:15

标签: java spring properties-file property-placeholder

我在applicationContext.xml中使用了以下配置

<context:property-placeholder location="classpath:system.properties,file:/data/conf/system.properties,file:/data/conf/1033.properties" ignore-unresolvable="true" />

加载一些占位符:

  1. 使用classpath:system.properties;
  2. 中定义的这些属性
  3. 如果/data/conf/system.properties中存在文件或属性,请使用它们代替上面的内容;​​
  4. 如果/data/conf/1033.properties中存在文件或属性,请使用它们而不是上述文件。
  5. 如果/data/conf/system.properties/data/conf/1033.properties都存在,Spring就开始了,但如果其中任何一个不存在,它将抛出rg.springframework.beans.factory.BeanInitializationException: Could not load properties; nested exception is java.io.FileNotFoundException: ...

    如何告诉spring加载这些属性但忽略丢失的属性。

1 个答案:

答案 0 :(得分:2)

您必须添加ignore-resource-not-found="true"

<context:property-placeholder location="classpath:system.properties,file:/data/conf/system.properties,file:/data/conf/1033.properties" 
   ignore-unresolvable="true"  
   ignore-resource-not-found="true"/>