参考资料:
[1]. 深入剖析Tomcat(How Tomcat works)书籍代码下载地址
第11章:StandardWrapper
第12章:StandardContext类
第13章:Host和Engine
第14章:服务器组件和服务组件
第15章:Digester库
第16章:关闭钩子
-
StandardWrapper和StandardContext
这两个类其实跟前面几章的例子大同小异。 -
服务器组件和服务组件
服务器组件(Server)包含多个服务组件(Service),一个Service可以有多个连接器和一个servlet容器,多个连接器可以为多种不同的请求协议提供服务。Server初始化和启动Service,Service初始化和启动连接器。 -
Digester
遇到某个元素的时候可以做如下动作:
- 创建对象
- 设置属性
- 调用方法
- 创建对象之间的关系(将后面创建的对象赋值给前面创建的对象)
...
正如我们前面看到Bootstrap有很多组件的创建和赋值,我们现在知道Digester可以从配置文件中读取配置完成组件的创建和赋值。
- 关闭钩子
我们不希望用户随意关闭程序带来一些问题,java程序在关闭的时候可以设置钩子函数,在这里调用Server.stop()可以完整关闭Tomcat整体组件。
整个框架分解为各个组件和各个组件之间的联系,容器及其之间的包含关系,监听器,阀门,服务组件等
网友评论