如何在Spring Application Context xml中将属性文件项映射到Map对象?

时间:2013-10-09 06:21:03

标签: java spring dictionary properties

我有一个属性文件

com.country.<COUNTRY>=<values comma seperated>

例如:

com.country.UK=100,200
com.country.US=10,20

现在将来可能会添加许多其他国家/地区的条目 我可以通过propertyPlaceHolder将这些值输入到spring应用程序上下文xml中的Map<String,List<Integer>>吗?

1 个答案:

答案 0 :(得分:1)

你可以使用spring util:  不要忘记导入方案,使用util:map和util:list来构造你想要的任何结构。可以使用ref-id作为值:

<beans  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util"
        xsi:schemaLocation="http://www.springframework.org/schema/util 
        http://www.springframework.org/schema/util/spring-util-2.5.xsd">

<util:map id="map1" map-class="java.util.HashMap">
    <entry key="smthgkey" value="smthvalue"/>
</util:map>

<util:list id="list1" list-class="java.util.ArrayList">
    <value>val1</value>
</util:list>

替代方法是创建具有必要结构的bean,但我从未使用过这种方式。您可以在此处找到示例:How to define a List bean in Spring?