標籤用於創建對象, 常用屬性概述:
1.class
用於定位類, 寫的是類型的全限定路徑.
2.id
用於給的對象做唯一標識. 命名規則一般是字母, 數字, 下劃線.
3.factory-bean
用於指定創建目標對象使用的工廠對象.
4.factory-method
用於指定調用工廠中的哪個方法去創建目標對象
5.name
給對象定義別名(小名, 暱稱). 可以出現一些特殊符號(不建議使用$, #), 例如/.多個別名可以通過逗號, 分號, 空格進行分隔.
6.init-method
初始化時自動調用的方法. 對象創建後, getBean之前, 會被spring調用一次.
7.destroy-method
銷燬時自動調用的方法. 對象被銷燬前, 由spring自動調用.
8.parent
標籤之間可以有繼承關係. 可以簡化屬性的賦值操作.
9.abstract
抽象的. 使用abstract修飾的, 不能被getBean獲取, 只能被其他繼承.
10.lazy-init
懶加載(延遲加載). 默認情況下, 容器被加載時, 對象就被創建. 使用lazy-init修飾的, 容器創建時不會創建該對象, 當第一次調用getBean的時候再去創建對象.
11.scope
表示對象的作用範圍及創建次數, 可選值有多個:
- singleton, 默認值. 單例
- prototype, 原型. 多例, 表示容器加載時不創建對象, 每次getBean都會創建一個新的對象.
- request, 同一次請求中, 對象單例
- session, 同一個會話中, 對象單例
- application, 在應用上下文中, 對象單例
- global session, 在portlet環境下的全局會話中對象單例
- websocket