Servelt工作原理解析(二)

本文详细解析了Tomcat启动过程中的Context容器初始化逻辑,包括ContextConfig如何解析配置文件,以及StandardContext容器中Listener的调用流程。深入探讨了Context容器从init状态到startInternal方法执行的全过程。

**继续上以一篇,说完了Tomact的启动start逻辑之后,当Context容器初始化状态设定为init时,添加在Contex容器的Listener将会被调用。ContextConfig继承了LifecleListener接口,它被加入到StandardContext容器当中。ContextConfig的类会负责整个Web应用的配置文件的解析工作。

==ContextConfig的init方法将会主要完成以下工作:
1.创建用于解析xml配置文件的contextDigester对象
2.读取默认的context。xml配置文件,如果存在解析它
3.读取默认Host配置文件,如果存在解析它
4.读取默认context自身的配置文件,如果存在解析它
5.设置Context的DocBase
ContextConfig的init方法完成后,Context容器的会执行startInternal方法,这个方法启动逻辑比较复杂,主要包括:
1.创建读物资源文件的对象
2.创建Classloader对象
3.设置应用的工作目录
4.启动相关的辅助类如:logger,realm,resources等
5修改启动状态,通知感兴趣的观察者(Web应用的配置)
6.子容器的初始化iu
7.获取ServeltContext并设置必要的参数
8.初始化“load on startup的Servlet
哈哈插眼,以后继续看serlet的架构和工作原理

原文链接—https://www.ibm.com/developerworks/cn/java/j-lo-servlet/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值