08-Spring的复杂类型的注入(基于XML)

1、maven依赖

    <dependencies>
        <!-- Spring上下文依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.1.9.RELEASE</version>
        </dependency>

        <!-- lombok依赖 -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.10</version>
            <scope>provided</scope>
        </dependency>

        <!-- junit依赖 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13-beta-3</version>
            <scope>test</scope>
        </dependency>

    </dependencies>

2、集合实体类

/**
 * <p>
 *      集合属性注入
 * <p>
 */
@Data
public class CollectionPro {
    //  数组
    private String[] arr;
    //  List集合
    private List<String> list;
    //  Set集合
    private Set<String> set;
    //  Map集合
    private Map<String,String> map;
}

3、Spring配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        https://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--集合属性注入-->
    <bean id="collectionpro" class="com.shiory.ioc.xml.CollectionPro" >
        <!--注入数组-->
        <property name="arr">
            <array>
                <value>arr1</value>
                <value>arr2</value>
                <value>arr3</value>
                <!--<ref></ref>  引用数据类型-->
            </array>
        </property>

        <!--注入List-->
        <property name="list">
            <list>
                <value>list1</value>
                <value>list2</value>
                <value>list3</value>
                <!--<ref></ref>  引用数据类型-->
            </list>
        </property>

        <!--注入Set-->
        <property name="set">
            <set>
                <value>set1</value>
                <value>set2</value>
                <value>set3</value>
                <!--<ref></ref>  引用数据类型-->
            </set>
        </property>

        <!--注入Map-->
        <property name="map">
            <map>
                <entry key="m1" value="map1"/>
                <entry key="m2" value="map2"/>
                <entry key="m3" value="map3"/>
                <!--<entry key-ref="m3" value-ref="map3"/>  引用数据类型-->
            </map>
        </property>
    </bean>
</beans>

4、测试

    /**
     * 集合注入测试
     */
    @Test
    public void ioc04(){
        //  1、创建Spring的工厂
        ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
        //  2、从工厂中获取实例对象
        CollectionPro coll = context.getBean("collectionpro", CollectionPro.class);
        System.out.println(coll.toString());

    }

测试结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值