Spring 學習筆記(四)

通過繼承實現bean配置信息的重用

在bean標籤中加入parent屬性,指定當前bean繼承於哪一個

使bean配置變成abstract

在bean標籤中加入abstract屬性,值爲true
變成抽象bean
使之只能被繼承不能直接調用

bean之間的依賴

默認在xml中按照順序創建,可以改變bean之間的依賴
可以在bean中加入depends-on屬性,指定這個對象的依賴
老師說,這個知識連一個使用場景都沒有。。。真讓我懷疑我先學spring再學web的計劃是否正確。。。

測試bean的作用域,分別創建單實例和多實例的bean

bean的作用域:bean是否單實例
默認情況下,bean都是一對一的單實例
scope屬性表示作用域,有四個值:
prototype 原型
singleton 單一的
request 同一次請求創建一個實例
session 同義詞會話創建一個實例
但是,一般都是將實例創建防止session域中,清晰明瞭,所以後邊兩個值是沒有用的。
單實例bean:
1)在容器啓動之前就已經創建完成
2)任何時候獲取都是獲取之前創建好的那個
多實例bean:
1)容器啓動默認不會創建多實例bean
2)當獲取實例的時候被創建
3)每次獲取都會創建一個新的對象

工廠模式

工廠幫助創建對象
有一個專門幫助我們創建類的工廠,就是工廠類
靜態工廠:工廠本身不用創建對象,通過靜態方法調用,對象=工廠類.工廠方法名()
實例工廠:工廠要被創建出來

class屬性指定工廠類,factory-method屬性指定工廠方法

實例工廠:配置出實例工廠,然後配製出要創建的類使用哪個工廠
然後在對象的bean中可以指定factory-bean屬性,規定用哪個工廠創建
不是反射創建的對象,是工廠的方法創建的

FactoryBean
只要是這個接口的實現類,Spring都認爲是一個工廠
需要在xml中註冊
ioc容器 啓動不會創建實例(多實例)
但也可以改變實例行爲,變成單實例

發佈了136 篇原創文章 · 獲贊 14 · 訪問量 5805
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章