Coin163

Spring配置多个PropertyPlaceholderConfigurer

2014-12-19by coin, 次阅读
        Spring中PropertyPlaceholderConfigurer这个类,它是用来解析Java Properties属性文件值,并提供在spring配置期间替换使用属性值。
(1) 基本的使用方法:
<bean id="propertyConfigurerForWZ" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="location"> 
        <value>classpath:/spring/properties/jdbc.properties</value> 
    </property> 
</bean>
(2)当存在多个Properties文件时,配置就需使用locations了:
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="locations"> 
       <list> 
          <value>classpath:/spring/properties/jdbc.properties</value> 
          <value>/WEB-INF/conf/spring/system.properties</value> 
        </list> 
    </property> 
</bean> 
(3) 使用多个PropertyPlaceholderConfigurer来分散配置,达到整合多工程下的多个分散的Properties文件,其配置如下:
<bean id="propertyConfigurerForProject1" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="order" value="1" /> 
    <property name="ignoreUnresolvablePlaceholders" value="true" /> 
    <property name="location"> 
       <value>classpath:/spring/include/dbQuery.properties</value> 
    </property> 
</bean> 

<bean id="propertyConfigurerForProject2" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="order" value="2" /> 
    <property name="ignoreUnresolvablePlaceholders" value="true" /> 
    <property name="locations"> 
      <list> 
         <value>classpath:/spring/properties/jdbc.properties</value> 
         <value>/WEB-INF/conf/spring/system.properties</value> 
      </list> 
    </property> 
</bean> 
其中order属性代表其加载顺序,而ignoreUnresolvablePlaceholders为是否忽略不可解析的Placeholder,
如配置了多个PropertyPlaceholderConfigurer,则需设置为true
------分隔线----------------------------
栏目列表