Tomcat9.0(可能8.0也一样)启动过程中的配置文件加载,一部分是通过EngineConfig, HostConfig, ContextConfig来进行的
这3个类都实现自LifecycleListener,初始化过程中他们执行顺序如下:
-
add listener: EngineConfig(Digester 中 操作的)
-
add listener: HostConfig(Digester 中 操作的)
-
fire listener: EngineConfig, before_init
-
fire listener: EngineConfig, after_init
-
fire listener: EngineConfig, before_start
-
fire listener: HostConfig, before_init
-
fire listener: HostConfig, after_init
-
fire listener: HostConfig, before_start
-
fire listener: HostConfig, start
-
add listener: ContextConfig(HostConfig中的deployWar时操作的)
-
fire listener: ContextConfig, before_init
-
fire listener: ContextConfig, after_init
-
fire listener: ContextConfig, before_start
-
fire listener: ContextConfig, configure_start
-
fire listener: ContextConfig, start
-
fire listener: ContextConfig, after_start
-
fire listener: HostConfig, after_start
-
fire listener: EngineConfig, start
-
fire listener: EngineConfig, after_start
(画图很累了,我就不写文字描述了)