Напишите пружинный компонент с конструктором, который содержит список значений из файла свойств

Не могли бы вы помочь мне, как правильно написать Spring Bean с параметром списка значений, которые я получаю из файла.properties.

  <bean id="property" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="location" value="classpath:dateFormat.properties" />
</bean>

<bean id="directoryMarshallerFolder1" class="threadService.DirectoryMarshalerFolder1">

    <constructor-arg>
        <list>
            ...
            <value = "${folder1.path}"/> ?????
            <value = "${folder2.path}"/> 
            ...
        </list>
    </constructor-arg>

</bean>

2 ответа

Решение

Я уже нашел результат.

 <constructor-arg> <list> <value>${folder1.path}</value> <value>${folder2.path}</value> </list> </constructor-arg> 

Вы должны сказать Spring, чтобы загрузить файл свойств:

<bean name="propertyPlaceholder" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
            <property name="locations">
                <value>classpath:application.properties</value>
            </property>
        </bean>

Обратите внимание, что ваш файл application.properties должен находиться в пути к классам вашего проекта (src/main/resources это хороший выбор, если вы используете Maven способ)

Затем вы можете использовать тег constructor-arg для заполнения вашего компонента:

  <constructor-arg index="0" value="${property.key1}"/>
  <constructor-arg index="1" ref="${property.key2}"  />
Другие вопросы по тегам