- 名師講壇:Spring實戰開發(Redis+SpringDataJPA+SpringMVC+SpringSecurity)
- 李興華
- 924字
- 2020-04-24 14:20:43
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配置文件清晰表達。這樣,當進行關聯關系修改時也會非常方便。
- Django+Vue.js商城項目實戰
- Java面向對象思想與程序設計
- Internet of Things with the Arduino Yún
- Silverlight魔幻銀燈
- 網店設計看這本就夠了
- 運用后端技術處理業務邏輯(藍橋杯軟件大賽培訓教材-Java方向)
- Modern C++ Programming Cookbook
- OpenCV 3 Blueprints
- C++程序設計教程
- Exploring SE for Android
- Python一行流:像專家一樣寫代碼
- Mapping with ArcGIS Pro
- VMware vSphere 5.5 Cookbook
- C語言程序設計教程
- Java EE程序設計與開發實踐教程