tomcat 學習筆記之生命週期

一、Catalina包含許多組件apache

  • Catalina 啓動關閉時,這些組件一塊兒啓動關閉
  • 實現 org.apache.catalina.LifeCycle 接口,能夠達到統一啓動/關閉這些組件

二、實現了LifeCycle 接口的組件會觸發以下事件數組

事件是org.apache.catalina.LifeCycleEvent 類的實例工具

  • BEFORE_START_EVENT
  • START_EVENT
  • AFTER_START_EVENT
  • BEFORE_STOP_EVENT
  • STOP_EVENT
  • AFTER_STOP_EVENT

事件監聽器 org.apache.catalina.LifeCycleListener 對這些事件進行響應設計

  • LifeCycleSupport 工具類,提供了簡單的方法觸發生命週期事件

三、LifeCycle 接口blog

  • Catalina 在設計上容許一個組件包含其餘組件
  • 父組件負責啓動/關閉子組件
  • 子組件在父組件監護下,只須要啓動一個組件就能夠將所有應用的組件啓動起來

  • 接口最重要方法 start 、stop 方法
  • 能夠添加多個事件監聽器
  • LifeCycle 接口實例能夠觸發的6個事件是以公共靜態 final 字符串表示

四、LifeCycleEvent 類(聲明週期事件)接口

五、LifeCycleListener 接口生命週期

  • 只有一個方法,當某個監聽器監聽到相關事件發生時會調用該方法

六、LifeCycleSupport 類(工具類)事件

一個組件實現了 LifeCycle接口,而且對某個事件註冊了監聽字符串

  • 必須提供LifeCycle接口中3個與監聽器相關方法的實現(添加監聽器、刪除監聽器、查詢監聽器)
  • 該組件須要將全部註冊的事件監聽器存儲起來(數組或ArrayList)
  • LifeCycleSupport 工具類來幫助管理監聽器,並觸發相應的生命週期事件
  • 存儲監聽器、添加監聽器、刪除監聽器、查詢監聽器、觸發事件等