Spring事件監聽詳解
一、觀察者模式
先來看下觀察者模式,舉個例子
警察和軍人是觀察者,犯罪嫌疑人是被觀察者
代碼實現:
定義被觀察者接口:
定義觀察者接口
定義壞人
定義好人:
定義好人2:
測試:
或者用JDK自帶的觀察者模式
定義壞人:
定義好人:
測試:
結果:
最後來總結一下,看下spring的事件
二、spring事件
下面來看下源碼
1 初始化事件廣播器
可以看到如果沒有自定義的事件廣播器,默認是使用SimpleApplicationEventMulticaster的
三、註冊監聽器
其實就是把監聽器添加到監聽器集合
四、發佈事件
發佈事件是在bean的初始化之後的
//1. 獲取到事件廣播器,發佈事件 getApplicationEventMulticaster().multicastEvent(event);
spring中的事件比較少,到spring boot中事件比較多,後續在spring boot中詳細介紹事件監聽這快。
到此這篇關於Spring事件監聽詳解的文章就介紹到這瞭,更多相關Spring事件監聽內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 基於Springboot使用logback的註意事項
- springboot 使用logback啟動報警報錯的解決
- Spring ApplicationListener源碼解析
- Java經典面試題匯總:Spring Boot
- SpringBoot零基礎入門之基本操作與概念