springbean初始化及銷燬你必須要掌握的回撥方法。
spring bean在初始化和銷燬的時候我們可以觸發一些自定義的回撥操作。
初始化的時候實現的方法
1、通過java提供的@PostConstruct註解;
2、通過實現spring提供的InitializingBean介面,並重寫其afterPropertiesSet方法;
3、通過spring的xml bean配置或bean註解指定初始化方法,如下面例項的initMethod方法通過@bean註解指定。
銷燬的時候實現的方法
1、通過java提供的@PreDestroy註釋;
2、通過實現spring提供的DisposableBean介面,並重寫其destroy方法;
3、通過spring的xml bean配置或bean註解指定銷燬方法,如下面例項的destroyMethod方法通過@bean註解指定。
初始、銷燬順序是怎樣的呢?
我們通過一個簡單的測試安全來驗證一下,分別把它們都派上用場。
上圖為要載入並銷燬的bean類。
上圖為測試並載入spring容器類,輸出這個方法得到以下結果。
===Constructor===
===@PostConstruct===
===InitializingBean afterPropertiesSet===
===initMethod===
===@PreDestroy===
===DisposableBean distroy===
===destroyMethod===
結論
從測試結果看出來的結果可以總結初始和銷燬對應的順序為:
初始:類構造器 > @PostConstruct > InitializingBean > init-method
銷燬:@PreDestroy > DisposableBean > destroyMethod
可能還有別的初始、銷燬的實現方法,歡迎留言和我交流。
相關文章
- spring bean初始化及銷燬你必須要掌握的回撥方法。SpringBean
- 網際網路時代,營銷人必須要掌握的能力
- Git中~你必須掌握的!Git
- git 必須要熟練掌握的命令Git
- 程式設計師生存指南:你必須要掌握的兩點!程式設計師
- JavaScript必須要掌握的知識-作用域JavaScript
- shell程式設計必須要掌握的命令-xargs程式設計
- 學習web前端,必須要掌握的CSS原理Web前端CSS
- Java程式設計師微服務架構你必須要掌握的十個要點Java程式設計師微服務架構
- Spring知識點回顧(05)bean的初始化和銷燬SpringBean
- 6. 你必須掌握Dart中的陣列Dart陣列
- 10 個你必須掌握的超酷 VI 命令技巧
- java開發必須要掌握的20個核心技術Java
- JavaScript必須要掌握的知識-作用域編寫提升JavaScript
- Java程式設計師面試必須要掌握的面試題Java程式設計師面試題
- Gradle:你必須掌握的開發常見技巧Gradle
- 大資料中必須要掌握的 Flink SQL 詳細剖析大資料SQL
- Java Annotation 必須掌握的特性Java
- 你必須掌握在Flutter中新增資原始檔Flutter
- 9個必須掌握的Javascript處理陣列的方法JavaScript陣列
- 成為Python大牛必須要掌握的高階語法——yieldPython
- Linux新手入門必須要掌握的10個知識點!Linux
- 遊戲開發者必須掌握的移動廣告6大要點遊戲開發
- 你必須掌握的視覺化大屏開發模式視覺化模式
- PMD外掛:你必須掌握的程式碼質量工具!
- 2017年,身為Android開發的你必須要掌握的熱門開源框架Android框架
- CSS中那些必須掌握的概念CSS
- 前端必須掌握的知識點前端
- aardio 開發桌面應用,這幾點必須要掌握!
- 未來兩年你必須掌握的五種程式語言
- 檔案管理,你必須要知道的三個要點
- 牛逼程式設計師必須要掌握金字塔思維程式設計師
- 關於js回撥方法及遞迴時的使用JS遞迴
- 學習Linux必須掌握的命令!Linux
- 必須掌握的10個Linux命令!Linux
- JAVA程式設計師“黃金5年”必須要掌握的知識技能Java程式設計師
- # 3分鐘短文:Laravel路由註冊,你必須掌握的“動詞”!Laravel路由
- 開發者掌握什麼手藝才能顯得逼格滿滿?你必須要懂的APK瘦身知識!APK