官术网_书友最值得收藏!

3.1 Bean基本管理

Spring容器之中,類對象需要交由Spring統一管理。在Spring配置中,除了可以定義類的基本處理邏輯外,還可以實現屬性的注入處理。

1.【mldnspring-base項目】創建Emp.java的程序類,實現常用屬性定義。

2.【mldnspring-base項目】修改spring-base.xml配置文件,追加Emp程序類的Bean配置。

本程序實現了Emp類的Bean配置,并且采用<property>元素設置了類對象中要保存的屬性,使用value設置了屬性的具體數據(只能是常用類型,如String、int、Integer等)。由于hiredate屬于java.util.Date類型,所以本例將系統的Date類也定義為Bean對象,隨后通過ref進行引用配置。

提示:采用內部Bean進行配置。

以上程序使用了兩個配置Bean,并且利用語句<property name="hiredate" ref="hiredateObject"/>實現了Bean的依賴關系。如果不想配置為兩個,可以采用內部Bean定義形式處理。

范例:采用內部Bean配置。

內部Bean只提供給一個屬性使用,所以不用再配置id屬性。

3.【mldnspring-base項目】編寫測試程序類,實現Emp對象注入。

本程序通過Spring創建了Emp的實例化對象,由于所有的屬性都已經在配置文件中定義了,所以注入后可以直接獲取Bean對象的完整信息。

除了可以進行單獨的Bean對象定義之外,也可以利用Spring配置文件實現Bean的引用配置。例如,假設某個雇員屬于某個部門,可以得到如圖3-1所示的類關聯關系。

圖3-1 類關聯關系

提示:關于數據轉型。

進行Spring配置時,所有配置內容均是以字符串形式出現的。常用的基本數據類型可以自動實現類型轉換,例如,10會自動轉為int或Integer。如果要設置的屬性類型是布爾型,則可匹配的內容有多個,如0(false)和1(true)、off(false)和on(true)、true和false等。

4.【mldnspring-base項目】創建Dept.java程序類,同時修改Emp.java類,追加關聯配置。

5.【mldnspring-base項目】修改spring-base.xml配置,追加Bean關聯配置。

本程序定義了Dept類對象id="dept",而后在定義Emp類對象時通過ref可以實例化Bean對象引用,這樣就實現了關聯配置。

提示:Spring擁有完善的反射處理機制。

上述配置,如果讀者對于反射機制非常熟悉的話,也可以通過Class、Method類對象,利用setter方法進行反射處理。但要想將其做到通用性,則還需要花費一些功夫。正是因為Spring擁有完善的反射處理機制,所以能有效提高開發效率。

6.【mldnspring-base項目】在編寫測試類時,可以通過Emp類對象找到Dept類對象,也可以直接將Dept類對象注入到程序中進行獲取。本測試程序將只注入Emp類對象。

此時程序實現了關聯對象的匹配,而對象之間的依賴關聯也可以通過Spring配置文件清晰表達。這樣,當進行關聯關系修改時也會非常方便。

主站蜘蛛池模板: 罗平县| 抚顺县| 璧山县| 呼玛县| 钦州市| 阳谷县| 太湖县| 滕州市| 大荔县| 封开县| 株洲县| 靖远县| 桦甸市| 萨迦县| 怀来县| 青州市| 罗源县| 禄劝| 左云县| 蓬莱市| 隆尧县| 高雄县| 道真| 日土县| 栾川县| 高台县| 桐梓县| 香港 | 广宁县| 庄河市| 柳州市| 沂源县| 仙游县| 奉节县| 临清市| 浏阳市| 烟台市| 武清区| 文水县| 册亨县| 麻栗坡县|