關於系統中使用多個PropertyPlaceholderConfigurer的配置


多數的鮮為人知方法都是因為有着罕見的應用,就比如說Spring中PropertyPlaceholderConfigurer這個類,它是用來解析Java Properties屬性文件值,並提供在spring配置期間替換使用屬性值。接下來讓我們逐漸的深入其配置。

 

 基本的使用方法是:(1)

 

Xml代碼   收藏代碼
  1. <bean id="propertyConfigurerForAnalysis" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
  2.     <property name="location">  
  3.         <value>classpath:/spring/include/dbQuery.properties</value>  
  4.     </property>  
  5. </bean>  

其中classpath是引用src目錄下的文件寫法。

 

 

當存在多個Properties文件時,配置就需使用locations了:(2)

 

Xml代碼   收藏代碼
  1. <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
  2.     <property name="locations">  
  3.        <list>  
  4.           <value>classpath:/spring/include/jdbc-parms.properties</value>  
  5.           <value>classpath:/spring/include/base-config.properties</value>  
  6.         </list>  
  7.     </property>  
  8. </bean>  

 

接下來我們要使用多個PropertyPlaceholderConfigurer來分散配置,達到整合多工程下的多個分散的Properties文件,其配置如下:(3)

 

Xml代碼   收藏代碼
  1. <bean id="propertyConfigurerForProject1" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
  2.     <property name="order" value="1" />  
  3.     <property name="ignoreUnresolvablePlaceholders" value="true" />  
  4.     <property name="location">  
  5.        <value>classpath:/spring/include/dbQuery.properties</value>  
  6.     </property>  
  7. </bean>  

 

Java代碼   收藏代碼
  1. <bean id="propertyConfigurerForProject2" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
  2.     <property name="order" value="2" />  
  3.     <property name="ignoreUnresolvablePlaceholders" value="true" />  
  4.     <property name="locations">  
  5.       <list>  
  6.         <value>classpath:/spring/include/jdbc-parms.properties</value>  
  7.         <value>classpath:/spring/include/base-config.properties</value>  
  8.       </list>  
  9.     </property>  
  10. </bean>  

 

其中order屬性代表其加載順序,而ignoreUnresolvablePlaceholders為是否忽略不可解析的Placeholder,如配置了多個PropertyPlaceholderConfigurer,則需設置為true

 

至此你已經了解到了如何使用PropertyPlaceholderConfigurer,如何使用多個Properties文件,以及如何配置多個PropertyPlaceholderConfigurer來分解工程中分散的Properties文件。至於PropertyPlaceholderConfigurer還有更多的擴展應用,如屬性文件加密解密等方法將在之后的博文中續寫。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM