Tomcat中有很多组件,这些组件会随着Tomcat启动而一起启动,也会随着Tomcat关闭而一起关闭。通过实现org.apache.catalina.Lifecycle
接口,可以达到统一启动/关闭这些组件的效果。
生命周期涉及的三个重要接口或类:Lifecycle
、LifecycleEvenet
和LifecycleListener
。
Lifecycle接口
Tomcat在设计上允许一个组件包含其他组件,父组件负责启动/关闭它的子组件。这样,Tomcat的启动类只需要启动一个组件就可以将全部应用的组件都启动起来。这种单一启动/关闭机制是通过 Lifecycle 接口实现的。
Lifecycle接口中最重要的是start()
方法和stop()
方法。组件必须提供这两个方法的实现,供其父组件使用,以实现对其进行启动/关闭操作。
addLifecycleListener()
、findLifecycleListeners
和removeLifecycleListener
是与事件监听器有关的。组件可以注册多个事件监听器来对发生在该组件上的某些事件进行监听。
|
|
LifecycleEvent
生命周期事件是org.apache.catalina.LifecycleEvent
的实例。
LifecycleListener
生命周期事件的监听器实现了org.apache.catalina.LifecycleListener
接口。