Spring4 -03 -Dependency Injection (依賴注入) : 程式碼體現/配置xml/測試
阿新 • • 發佈:2018-12-08
- 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;
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 + '}'; }View Codepublic 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 中新增一個
<!-- 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}
}