02 spring中bean的集合的配置和使用

前面我们看了springioc中的基本配置,这一节我们来看一下xml中集合的配置和使用。

1、前提约束

2、操作步骤

  • 在src文件夹下的net.wanho.entity.User.java中加入以下成员变量,并提供它们的get/set方法
    List<String> list;
    Set<String> set;
    Map<String, String> map;
    Properties properties;
    //get、set方法
  • 在src的bean.xml文件中加入以下内容:
    <bean id="user2" class="net.wanho.entity.User">
        <property name="id" value="123"></property>
        <property name="name" value="ali"></property>
        <property name="list">
            <list>
                <value>java</value>
                <value>python</value>
            </list>
        </property>
        <property name="set">
            <set>
                <value type="java.lang.String">java</value>
                <value type="java.lang.String">python</value>
            </set>
        </property>
        <property name="map">
            <map>
                <entry key="name" value="ali">
                </entry>
                <entry key="gender" value="maile">
                </entry>
            </map>
        </property>
        <property name="properties">
            <props>
                <prop key="key1">value1</prop>
                <prop key="key2">value2</prop>
            </props>
        </property>
    </bean>
  • 在测试类中的关键代码如下:
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("bean.xml");
        User user= applicationContext.getBean("user2",User.class);
        System.out.println(user);
  • 优化
    在上述的配置过程中,如果集合本身要被其他bean使用,那只能重复写一次,如何不重复?
    将bean.xml的配置改为如下内容:
    <bean id="user2" class="net.wanho.entity.User">
        <property name="id" value="123"></property>
        <property name="name" value="ali"></property>
        <property name="list" ref="list">
        </property>
        <property name="set" ref="set">
        </property>
        <property name="map" ref="map">
        </property>
        <property name="properties" ref="properties">
        </property>
    </bean>
    <utils:list id="list">
        <value>java</value>
        <value>cpp</value>
    </utils:list>
    <utils:properties id="properties">
        <prop key="key">value</prop>
        <prop key="key1">value1</prop>
    </utils:properties>
    <utils:map id="map" id="map">
        <entry key="name" value="ali"></entry>
        <entry key="gender" value="male"></entry>
    </utils:map>
    <utils:set id="set" id="set">
        <value type="java.lang.String">java</value>
        <value type="java.lang.String">python</value>
    </utils:set>

以上就是在springioc中集合的配置和使用。

猜你喜欢

转载自www.cnblogs.com/alichengxuyuan/p/12554730.html