如何使用Spring创建HashMap bean

时间:2016-06-18 21:53:22

标签: java spring

我刚接触使用Spring和Java,我试图使用Spring的配置文件来实例化一个简单的HashMap。我想知道在Spring配置上下文文件中放入什么来使其工作。我知道util:map以某种方式被使用,但我看到的所有示例代码都是复杂的实例化(例如对于HashMap<Class<?>,List<String>>)从中难以理解,或者作者没有很好地解释他/她做了,让我很沮丧!

如果我想生成此规范的简单HashMap,我需要在beans.xml上下文文件中放入什么? ...

HashMap<Integer, String>

请展示一个清晰的示例,显示XML并说明您正在进行的任何命名假设。

1 个答案:

答案 0 :(得分:4)

我使用的是Spring 4.0.3,您可以使用此配置。您可以看到地图的键类型是Integer,而值类型是String。

<bean id="map" class="java.util.HashMap" scope="prototype" >
    <constructor-arg>
        <map key-type="java.lang.Integer" value-type="java.lang.String">
            <entry key="1" value="one" />
            <entry key="2" value="two" />
        </map>
    </constructor-arg>
</bean>

获取此bean的示例如下。

public static void main(String[] args){

    ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");

    Map<Integer,String> map = (HashMap) context.getBean("map");
    System.out.println(map);
}`