2011-12-19 6 views
8

スプリング3アプリケーションで<util:properties>タグを使用して複数のプロパティファイルをロードしたいとします。 私はブログで検索しましたが、これを行うための正しいパスを得ることはできません。スプリング3で<util:properties>を使用して複数のプロパティファイルをロード

うまくいけば、誰かが私にこの問題を克服する答えを与えることを望みます。

答えて

9

私のソリューション

<context:property-placeholder location="classpath*:*.properties,file:/some/other/path/*.properties" /> 
+0

これは、あなたの設定ファイル$ {some.props}を持っているプレースホルダのために動作しますが、それは(@valueでは動作しません。 @Alexei Osipovがその情報を必要とする場合に備えて、そのソリューションを使用するために、あなたのbeanに "#{properties}")を追加してください。 – Koitoer

3

のutil:プロパティは、わずか1プロパティファイル(reference)をサポートするようです。 @pepergによって提案された設定を使用したいかもしれません。

+0

答えが – Anshul

13

実際に<util:properties>org.springframework.beans.factory.config.PropertiesFactoryBeanの便利なタグです。 PropertiesFactoryBeanは複数の場所をサポートしています。

だから、Propertiesと、このようにBeanを作成することが可能である:

<bean id="myProps" class="org.springframework.beans.factory.config.PropertiesFactoryBean"> 
     <property name="locations"> 
      <list> 
       <value>classpath:myprops-common.properties</value> 
       <value>classpath:myprops-override.properties</value> 
       <value>classpath:some-more-props-here.properties</value> 
      </list> 
     </property> 
    </bean> 
+0

ありがとうございます。 – JonyD

関連する問題