Spring4 -03 -Dependency Injection (依赖注入) : 代码体现/配置xml/测试

  1. DI:中文名称:依赖注入
  2. 英文名称((Dependency Injection)
  3. DI 是什么?

    3.1 DI 和IoC 是一样的,差不多一样的技术和模板!

    3.2 当一个类(A)中需要依赖另一个类(B)对象时, B 赋值给A 的过程就叫做依赖注入.

 4.代码体现: (添加一个desk,并且添加进People属性内)

   4.1 添加desk bean类 :

    private int id;
    private double price;

package com02.bean;

public class Desk {
    private int id;
    private double price;

    public void setId(int id) {
        this.id = id;
    }

    @Override
    public String toString() {
        return "Desk{" +
                "id=" + id +
                ", price=" + price +
                '}';
    }

    public int getId() {
        return id;
    }

    public double getDesk() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public double getPrice() {
        return price;
    }
}
View Code

  4.2  在com02/test/applicationcontext.xml 中添加一个desk,并且添加进People属性内

<!--
        id表示获取到的对象的标识;class表示创建那个类的对象;
    -->
    <bean id="peo" class="com02.bean.People">
        <property name="id" value="001"></property>
        <property name="name" value="我叫零零一"></property>
        <property name="lists">
            <list>
                <value>list01</value>
                <value>list02</value>
                <value>list03</value>
            </list>
        </property>
        <property name="sets">
            <set>
                <value>set01</value>
                <value>set02</value>
                <value>set03</value>
            </set>
        </property>

<property name="desk" ref="desk"></property> </bean> <bean id="desk" class="com02.bean.Desk"> <property name="id" value="1"></property> <property name="price" value="12"></property> </bean>

  5 进行测试

//测试 DI
People people=ac.getBean("peo",People.class);
System.out.println(people);

 
//测试结果

People{
  id
=1, name='我叫零零一',
  lists=[list01, list02, list03], sets=[set01, set02, set03], desk=Desk{id=1, price=12.0}
}

猜你喜欢

转载自www.cnblogs.com/zhazhaacmer/p/10087226.html