2013-12-02 6 views
0

Я файл свойств, как это:Spring PropertyPlaceholderConfigurer и ключи с несколькими значениями

firstproperty=1,2,3,4 
secondproperty=47,998,120 
thirdproperty=54 

Мой файл свойств хорошо определен в моей конфигурации Spring как свойство для моего PropertyPlaceHolderConfigurer боба.

Я хочу, чтобы загрузить значения в

HashMap<String, ArrayList<String>> 

как это:

<util:map id="properties" map-class="java.util.HashMap"> 
    <entry key="first" value="${firstproperty}" /> 
    <entry key="second" value="${secondproperty}" /> 
    <entry key="three" value="${thirdproperty}" /> 
</util:map> 

Проблема заключается в том, что для каждой записи, несколько значений, разделенных запятыми считаются одним значением. Я попытался настроить тип значения my util-map в ArrayList, но он не увенчался успехом. Есть идеи ?

P.S: Я использую Spring 3.2.

+0

Вы можете посетить эту ссылку: http: //stackoverflow.com/questions/12576156/reading-a-list-from-properties-file-and-load-with-spring-annotation -значение Надеюсь, это полезно. – freeman

+0

@Freeman спасибо, на самом деле я его прочитал, и я не был полностью доволен, потому что мне нужно управлять инъекциями бобов в конфигурационный файл Spring, а не в Java-коде. – user2107034

ответ

1

Я искал Spring EL в конфигурационном файле, может быть, это то, что вы хотите:

<bean id="taxCalculator" class="org.spring.samples.TaxCalculator"> 
<property name="defaultLocale" value="#{ systemProperties['user.region'] }.split(',')"/> 

<!-- other properties --> 

Я не уверен, о местоположении раздельного метода, вы можете попробовать себя, чтобы найти правильный путь , Для получения дополнительной информации см.: http://docs.spring.io/spring/docs/3.0.x/reference/expressions.html

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