1、注入数组类型属性
    2、注入 List 集合类型属性
    3、注入 Map 集合类型属性
    (1)创建类,定义数组、list、map、set 类型属性,生成对应 set 方法

    1. package com.atguigu.spring5.collectiontype;
    2. import java.util.List;
    3. import java.util.Map;
    4. import java.util.Set;
    5. public class Stu {
    6. //1 数组类型属性
    7. private String[] courses;
    8. //2 list 集合类型属性
    9. private List<String> list;
    10. //3 map 集合类型属性
    11. private Map<String,String> maps;
    12. //4 set 集合类型属性
    13. private Set<String> sets;
    14. public void setSets(Set<String> sets) {
    15. this.sets = sets;
    16. }
    17. public void setCourses(String[] courses) {
    18. this.courses = courses;
    19. }
    20. public void setList(List<String> list) {
    21. this.list = list;
    22. }
    23. public void setMaps(Map<String, String> maps) {
    24. this.maps = maps;
    25. }
    26. }

    (2)在 spring 配置文件进行配置

    1. <!--1 集合类型属性注入-->
    2. <bean id="stu" class="com.atguigu.spring5.collectiontype.Stu">
    3. <!--数组类型属性注入-->
    4. <property name="courses">
    5. <array>
    6. <value>java课程</value>
    7. <value>数据库课程</value>
    8. </array>
    9. </property>
    10. <!--list 类型属性注入-->
    11. <property name="list">
    12. <list>
    13. <value>张三</value>
    14. <value>小三</value>
    15. </list>
    16. </property>
    17. <!--map 类型属性注入-->
    18. <property name="maps">
    19. <map>
    20. <entry key="JAVA" value="java"></entry>
    21. <entry key="PHP" value="php"></entry>
    22. </map>
    23. </property>
    24. <!--set 类型属性注入-->
    25. <property name="sets">
    26. <set>
    27. <value>MySQL</value>
    28. <value>Redis</value>
    29. </set>
    30. </property>
    31. </bean>

    4、在集合里面设置对象类型值

    1. <!--创建多个 course 对象-->
    2. <bean id="course1" class="com.atguigu.spring5.collectiontype.Course">
    3. <property name="cname" value="Spring5框架"></property>
    4. </bean>
    5. <bean id="course2" class="com.atguigu.spring5.collectiontype.Course">
    6. <property name="cname" value="MyBatis框架"></property>
    7. </bean>
    8. <!--注入 list 集合类型,值是对象-->
    9. <property name="courseList">
    10. <list>
    11. <ref bean="course1"></ref>
    12. <ref bean="course2"></ref>
    13. </list>
    14. </property>

    5、把集合注入部分提取出来(作为一个公共部分其他地方也能用到)
    (1)在 spring 配置文件中引入名称空间 util

    1. <beans xmlns="http://www.springframework.org/schema/beans"
    2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    3. xmlns:p="http://www.springframework.org/schema/p"
    4. xmlns:util="http://www.springframework.org/schema/util"
    5. xsi:schemaLocation="http://www.springframework.org/schema/beans
    6. http://www.springframework.org/schema/beans/spring-beans.xsd
    7. http://www.springframework.org/schema/util
    8. http://www.springframework.org/schema/util/spring-util.xsd">

    (2)使用 util 标签完成 list 集合注入提取

    1. <!--1 提取 list 集合类型属性注入-->
    2. <util:list id="bookList">
    3. <value>易筋经</value>
    4. <value>九阴真经</value>
    5. <value>九阳神功</value>
    6. </util:list>
    7. <!--2 提取 list 集合类型属性注入使用-->
    8. <bean id="book" class="com.atguigu.spring5.collectiontype.Book">
    9. <property name="list" ref="bookList"></property>
    10. </bean>