Tomcat的启动类是Boostrap,它的功用是接收控制台的命令,根据命令来控制Catalina.而Catalina负责的是解析Tomcat的配置文件,以此来创建服务器组件.并根据命令来对其进行管理.服务器组件和服务组件的任务就是组装并启动Servlet引擎,Tomcat连接器.
Catalina有个属性server这个就是它所管理的server.它的主要方法也是对其进行操作的.其中load方法就是根据server.xml来构造一系列的组件,并调用server的init方法来初始化整个web服务器.而其start,stop方法顾名思义也就是用来启动和停止服务器组件(默认实现是StandardServer).而Server对外提供服务是使用其service属性,该属性是一个数组.在Server.xml的配置中体现为Service节点.StandardServer的起停也就是service的启停.当然中间会包括一些生命周期事件.上述的StandardServer,StandardService都是继承自LifecycleMBeanBase.类图(猛击看图)可以很清晰地看出他们的类层次关系.感兴趣的话可以仔细研读其中的代码.StandardServer接受命令后是使用StandardServise来控制Servlet引擎和Tomcat连接器.
本文详细解析了Tomcat的核心启动类Bootstrap及其作用,如何通过Bootstrap接收命令来控制Catalina,以及Catalina如何解析配置文件创建服务器组件,并通过生命周期方法进行管理。着重介绍了StandardServer和StandardService的职责,以及它们如何配合实现Servlet引擎和Tomcat连接器的启动与关闭。同时,通过类图清晰展示了组件间的层次关系。
2万+

被折叠的 条评论
为什么被折叠?



