2011-12-19 2 views
8

Я хочу загрузить несколько файлов свойств с помощью метки <util:properties> в приложении весной 3. Я искал в блогах, но не могу получить правильный путь для этого.Загрузите несколько файлов свойств с помощью <util: properties> весной 3

Надеюсь, кто-нибудь даст мне ответ, чтобы преодолеть эту проблему.

ответ

9

Мое решение

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

Это работает для заполнителя, что у вас есть в вашем конфигурационный файл $ {some.props}, но это не работает с @value («# {properties}») в вашем компоненте, чтобы использовать это решение, которое работает @Alexei Osipov, на случай, если кому-то понадобится эта информация – Koitoer

3

Util: свойства, кажется, поддерживает файл только 1 свойства (reference). Возможно, вы захотите использовать конфигурацию, предложенную @peperg.

+0

спасибо за ответ – Anshul

13

Фактически <util:properties> - это просто удобная бирка для org.springframework.beans.factory.config.PropertiesFactoryBean. И PropertiesFactoryBean поддерживает несколько местоположений.

Так можно создать компонент с Properties таким образом:

<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

Смежные вопросы