特殊类型注入-数组与集合

数组

给 Emp 添加上属性 private String[] love; 表示员工爱好

配置

<bean id="dept" class="com.study.spring6.iocxml.deptAndEmp.Dept">
    <property name="dName" value="IT"/>
</bean>

<bean id="emp" class="com.study.spring6.iocxml.deptAndEmp.Emp">
    <property name="name" value="mary"/>
    <property name="age" value="20"/>
    <property name="dept" ref="dept"/>
    <property name="love">
        <array>
            <value>跑步</value>
            <value>睡觉</value>
            <value>学习</value>
        </array>
    </property>
</bean>

执行结果

Emp{name='mary', age='20', dept=Dept{dName='IT', emp=null}, love=[跑步, 睡觉, 学习]}

集合

配置

配置集合和配置数组差不多,集合采用 list 标签,标签下再使用 ref 引用外部 bean

<bean id="dept" class="com.study.spring6.iocxml.deptAndEmp.Dept">
    <property name="dName" value="IT"/>
    <property name="emps">
        <list>
            <ref bean="emp1"/>
            <ref bean="emp2"/>
        </list>
    </property>
</bean>

<bean id="emp1" class="com.study.spring6.iocxml.deptAndEmp.Emp">
    <property name="name" value="mary"/>
    <property name="age" value="20"/>
    <property name="dept" ref="dept"/>
    <property name="love">
        <array>
            <value>跑步</value>
            <value>睡觉</value>
            <value>学习</value>
        </array>
    </property>
</bean>

<bean id="emp2" class="com.study.spring6.iocxml.deptAndEmp.Emp">
    <property name="name" value="sy"/>
    <property name="age" value="11"/>
    <property name="dept" ref="dept"/>
    <property name="love">
        <array>
            <value>跑步</value>
            <value>睡觉</value>
            <value>学习</value>
        </array>
    </property>
</bean>

执行结果

第一句话是写在 dept 的 tostring() 里的

该部门有以下员工: 
mary
sy
Dept{dName='IT'}
posted @ 2023-07-15 13:21  ShaunY  阅读(10)  评论(0)    收藏  举报