Spring框架中不同類型的事件


ContextRefreshedEvent,ApplicationContext初始化或者被更新是會觸發,ConfigurableApplicationContext接口中的refresh()方法被調用會觸發

ContextStartedEvent,,ConfigurableApplicationContext接口中的start()方法被調用會觸發

ContextStoppededEvent,,ConfigurableApplicationContext接口中的stop()方法被調用會觸發

ContextClosedEvent,AppliactionContext被關閉時觸發該事件,所有容器管理的單例bean被銷毀。

RequestHandledEvent,當一個http請求結束時觸發該事件

 

如果一個bean實現了ApplicationListener接口,當一個ApplicationEvent被發布后,遍歷所有監聽器,對於每一個監聽器來說其實都可以獲取到監聽事件,但是是否進行處理則由事件監聽器來決定,如果要處理,使用onApplicationEvent()方法來進行監聽器的處理

  自定義監聽事件,需要ApplicationEvent接口,ApplicationContext使用publishEvent()方法來發布事件。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM