IOC操作bean管理--注入集合属性

实体类

package com.feng.pojo;

import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class Stu {
    //1 数组类型属性
    private String[] courses;
    //2 list 集合类型属性
    private List<String> list;
    //3 map 集合类型属性
    private Map<String, String> maps;
    //4 set 集合类型属性
    private Set<String> sets;

    public String[] getCourses() {
        return courses;
    }

    public void setCourses(String[] courses) {
        this.courses = courses;
    }

    public List<String> getList() {
        return list;
    }

    public void setList(List<String> list) {
        this.list = list;
    }

    public Map<String, String> getMaps() {
        return maps;
    }

    public void setMaps(Map<String, String> maps) {
        this.maps = maps;
    }

    public Set<String> getSets() {
        return sets;
    }

    public void setSets(Set<String> sets) {
        this.sets = sets;
    }
}

数组

  • setter注入,不能加入带参构造方法
<bean id="stu" class="com.feng.pojo.Stu">
        <property name="courses">
            <array>
                <value>Java</value>
                <value>Python</value>
            </array>
        </property>
    </bean>

List

<property name="list">
            <list>
                <value>jiang</value>
                <value>li</value>
                <value>feng</value>
            </list>
        </property>

map

<property name="maps">
            <map>
                <entry key="name" value="lifeng"></entry>
                <entry key="age" value="22"></entry>
            </map>
        </property>

set

<property name="sets">
            <set>
                <value>j</value>
                <value>l</value>
            </set>
        </property>

注入引用类型

<bean id="emp" class="com.feng.pojo.Emp">
        <property name="eid" value="1"></property>
        <property name="ename" value=""></property>
        <property name="age" value="22"></property>
        <property name="dept" ref="dept"></property>
        <property name="dept.did" value="1"></property>
        <property name="dept.dname" value="财务部"></property>
    </bean>
    <bean id="dept" class="com.feng.pojo.Dept"></bean>

    <bean id="stu" class="com.feng.pojo.Stu">
        <property name="empList">
            <list>
                <ref bean="emp"></ref>
            </list>
        </property>

使用util标签,添加命名空间util

 <!-- 把list部分提取出来,使用util标签-->
    <util:list id="uList">
        <value>jiang</value>
        <value>li</value>
        <value>feng</value>
    </util:list>
    <bean id="stu" class="com.feng.pojo.Stu">
        <property name="list" ref="uList"></property>
    </bean>
posted @ 2022-11-11 20:47  小匠i  阅读(25)  评论(0)    收藏  举报