- DI:中文名称:依赖注入
- 英文名称((Dependency Injection)
- DI 是什么?
3.1 DI 和IoC 是一样的,差不多一样的技术和模板!
3.2 当一个类(A)中需要依赖另一个类(B)对象时,把 B 赋值给A 的过程就叫做依赖注入.
4.代码体现: (添加一个desk类,并且添加进People属性内)
4.1 添加desk bean类 :
private int id;
private double price;
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
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; } }
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}
}