原文:http://blog.csdn.net/tanjianlin88/article/details/4236218
1.<beans>
1)default-init-method ="方法名" 定義在此設定檔中的bean都會執行指定的init方法。
2)default-destroy-method="方法名" 定義在此設定檔中的bean都會在執行指定的destroy方法。
3)default-lazy-init ="false|true" 定義在此設定檔中的bean都會消極式載入。
2.<bean>
1)id 唯一名稱。
2)name 可以指定多個名字。
3)class 指定bean關聯的關聯的類,全路徑。
4)depends-on 依賴那些bean。
5)lazy-init = "false|true" 是否消極式載入,預設false
6)scope ="singleton|prototype|request|session|global session"
指定bean的作用範圍,預設singleton。
7)autowire="no|byName|byType|constructor|autodetect" 預設no.
| 模式 |
說明 |
| no |
不使用自動裝配。必須通過ref元素指定依賴,這是預設設定。由於顯式指定共同作業者可以使配置更靈活、更清晰,因此對於較大的部署配置,推薦採用該設定。而且在某種程度上,它也是系統架構的一種文檔形式。 |
| byName |
根據屬性名稱自動裝配。此選項將檢查容器並根據名字尋找與屬性完全一致的bean,並將其與屬性自動裝配。例如,在bean定義中將autowire設定為by name,而該bean包含master屬性(同時提供setMaster(..)方法),Spring就會尋找名為master的bean定義,並用它來裝配給master屬性。 |
| byType |
如果容器中存在一個與指定屬性類型相同的bean,那麼將與該屬性自動裝配。如果存在多個該類型的bean,那麼將會拋出異常,並指出不能使用byType方式進行自動裝配。若沒有找到相匹配的bean,則什麼事都不發生,屬性也不會被設定。如果你不希望這樣,那麼可以通過設定dependency-check="objects"讓Spring拋出異常。 |
| constructor |
與byType的方式類似,不同之處在於它應用於構造器參數。如果在容器中沒有找到與構造器參數類型一致的bean,那麼將會拋出異常。 |
| autodetect |
通過bean類的自省機制(introspection)來決定是使用constructor還是byType方式進行自動裝配。如果發現預設的構造器,那麼將使用byType方式。 |
8)dependency-check="none|simple|object|all" 指定依賴檢查。
| 模式 |
說明 |
| none |
沒有依賴檢查,如果bean的屬性沒有值的話可以不用設定。 |
| simple |
對於原始類型及集合(除共同作業者外的一切東西)執行依賴檢查 |
| object |
僅對共同作業者執行依賴檢查 |
| all |
對共同作業者,原始類型及集合執行依賴檢查 |
9)init-method 執行指定的init方法
10) destroy-method 執行指定的destroy方法
11) abstract ="false|true" 指定bean是否是抽象的,預設false。
12)factory-method 指定使用的方法名。
13) factory-bean 指定Factory 方法使用的bean.
14)parent 指定繼承的父bean的配置。包括屬性,值等。