从应用程序上下文中的.properties文件访问map属性(Spring)

时间:2015-04-28 00:08:27

标签: java spring

在我的.properties文件中,我有类似的内容:

map = key1=value1, key2=value2

如何使用占位符访问applicationContext.xml中的键值对?我知道如果属性只是一个字符串,那就是:

<bean id="string_prop" class="java.lang.String">
    <constructor-arg value="${string.prop}"/>
</bean>

我也见过这个:

<util:map id="map_prop" key-type="java.lang.String" value-type="java.lang.String">
    <entry key="key" value="value"></entry>
</util:map>

但我不确定如何从.properties文件中访问键值对。

2 个答案:

答案 0 :(得分:0)

如果您想在java代码中访问地图,请使用如下所示

在applicationContext.xml

<bean id="mapName" class="java.util.HashMap">
        <constructor-arg ref="property" /> 
</bean>

<util:properties id="property" location="properName.properties"/>

在java中:

 @Autowired
    protected HashMap<String, String> mapName;

答案 1 :(得分:0)

如果你想从applicationContext本身意味着使用如下,

在applicationContext.xml

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="location" value="propertyName.properties"/>
        <property name="ignoreUnresolvablePlaceholders" value="true"/>
</bean>

<bean id="string_prop" class="java.lang.String">
    <constructor-arg value="${string.prop}"/>
</bean>

在属性文件中:

string.prop=some name