Spring属性注入【三】 复杂类型注入

P名称空间注入

applicationContext.xml配置文件:

//引用
xmlns:p="http://www.springframework.org/schema/p"


<bean id="person" class="Person全路径" p:pname="Bob">bean>

复杂类型注入

复杂类型:

  • 1、数组
  • 2、list集合
  • 3、map集合
  • 4、properties类型

具体实现:

Person类:

public class Person{
    private String pname;
    public void setPname(String pname){
        this.pname = pname;
    }

    private String [] arrs;
    private List list;
    private Map map;
    private Properties properties;      //util包中的Peoperties

    //生成属性的set方法,此处略去

    public void test(){
        System.out.println("arrs:"+arrs);
        System.out.println("list:"+list);
        System.out.println("map:"+map);
        System.out.println("properties:"+properties);
    }
}

applicationContext.xml配置文件:



<bean id="person" class="Person全路径">

    
    <property name="arrs">
        <list>
            <value>Bobvalue>  //数组中第一个值
            <value>Tomvalue>  //数组中第二个值
            <value>johnvalue> //数组中第三个值
        list>
    property>

    
    <property name="list">
        <list>
            <value>aaavalue>  //list中第一个值
            <value>bbbvalue>  //list中第二个值
            <value>cccvalue>  //list中第三个值
        list>
    property>

    
    <property>
        <map>
            <entry key="aa" value="11">entry>
            <entry key="bb" value="12">entry>
            <entry key="cc" value="13">entry>
        map>
    property>

    
    <property name="properties">
        <props>
            <prop key="driverclass">com.mysql.jdbc.Driverprop>
            <prop key="username">rootprop>
            <prop key="password">123456prop>
        props>
    property>
bean>

测试方法:

public void testUser(){
    //1、加载spring配置文件,根据创建对象
    ApplicationContext context = 
        new ClassPathXmlApplicationContext("applicationContext.xml");
    //2、得到配置创建对象
    Person person = (Person) context.getBean("person");
    person.test();
}

注:

本文是我自学笔记总结,不足之处,还望指正,谢谢。

你可能感兴趣的:(Java,Spring,java,ee,java,web,Java,Engineer)