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
可能還有別的初始、銷燬的實現方法,歡迎留言和我交流。
相關文章
- 必須要掌握的重要目錄
- Git中~你必須掌握的!Git
- 程式設計師生存指南:你必須要掌握的兩點!程式設計師
- JavaScript必須要掌握的知識-作用域JavaScript
- 學習web前端,必須要掌握的CSS原理Web前端CSS
- shell程式設計必須要掌握的命令-xargs程式設計
- Java程式設計師微服務架構你必須要掌握的十個要點Java程式設計師微服務架構
- JavaScript必須要掌握的知識-作用域編寫提升JavaScript
- java開發必須要掌握的20個核心技術Java
- 大資料中必須要掌握的 Flink SQL 詳細剖析大資料SQL
- 6. 你必須掌握Dart中的陣列Dart陣列
- Gradle:你必須掌握的開發常見技巧Gradle
- 成為Python大牛必須要掌握的高階語法——yieldPython
- Linux新手入門必須要掌握的10個知識點!Linux
- 回撥方法
- 9個必須掌握的Javascript處理陣列的方法JavaScript陣列
- aardio 開發桌面應用,這幾點必須要掌握!
- 你必須掌握在Flutter中新增資原始檔Flutter
- 你必須掌握的視覺化大屏開發模式視覺化模式
- PMD外掛:你必須掌握的程式碼質量工具!
- 4_Spring Bean的初始化和銷燬SpringBean
- 必須掌握的10個Linux命令!Linux
- 前端必須掌握的知識點前端
- CSS中那些必須掌握的概念CSS
- 學習Linux必須掌握的命令!Linux
- 關於js回撥方法及遞迴時的使用JS遞迴
- 檔案管理,你必須要知道的三個要點
- 2022年了你必須要學會搭建微前端專案及部署方式前端
- 必須掌握的Linux使用者組Linux
- Java必須掌握的Spring常用註解JavaSpring
- 牛逼程式設計師必須要掌握金字塔思維程式設計師
- JAVA程式設計師“黃金5年”必須要掌握的知識技能Java程式設計師
- # 3分鐘短文:Laravel路由註冊,你必須掌握的“動詞”!Laravel路由
- Android 回撥方法的實現Android
- 關於Flutter初始化,我必須告訴你的是...(乾貨)Flutter
- 你必須知道的 SmartSql !SQL
- Linux系統中必須掌握的特殊字元!Linux字元
- Linux必須掌握的shell指令碼基礎Linux指令碼
- 前端工程師必須掌握的設計模式前端工程師設計模式