Tomcat源码
文章平均质量分 77
肥龙上天
我暂时还不想告诉你...
展开
-
Tomcat主要构件
Tomcat是什么?Apache Tomcat是由Apache Software Foundation(ASF)开发的一个开源Java WEB应用服务器。 Tomcat实现了几个Java EE规范,包括Java Servlet、Java Server Pages(JSP),Java Expression Language和Java WebSocket等.因为实现了Servlet规范,所以...原创 2018-04-22 23:10:57 · 275 阅读 · 0 评论 -
Tomcat 初始化及启动过程
Tomcat中很多组件具有生命周期,如初始化、启动、关闭,这些组件的生命周期具有共性,因此Tomcat中将其抽象为接口Lifecycle,来控制组件的生命周期,它通过 事件机制 实现各个容器间的内部通讯。 Lifecycle接口的方法: 继承关系图: Tomcat的类加载器架构先是Bootstrap.initClassLoaders()设置类加载器:CommonClas...原创 2018-04-23 13:50:27 · 5956 阅读 · 0 评论 -
Tomca容器 ContainerBase 解析
Tomcat的核心作用是Servlet容器,Tomcat中Engine,Host,Context,Wrapper有一个骨架类org.apache.catalina.core.ContainerBase,ContainerBaseprotected final HashMap<String, Container> children = new HashMap<>...原创 2018-04-23 17:26:44 · 1132 阅读 · 0 评论 -
Tomcat中 pipeline valve机制
Tomcat中按照包含关系一共有四个容器——engine,host,context,wrapper; 四个容器中每个容器都包含自己的管道对象,管道对象用来存放若干阀门对象,但tomcat会为他们制定一个默认的基础阀门【StandardEngineValve,StandardHostValve,StandardContextValve ,StandardWrapperValve】。四个基础阀门放在...原创 2018-04-23 17:37:20 · 2314 阅读 · 1 评论 -
Tomcat-Connector(连接器)
Connector组件是Tomcat两个核心组件之一(另一个是Container),主要任务是负责接收客户端发过来的TCP连接请求,创建一个Request和Response对象用于和请求端交换数据。Connect类图关键属性和方法 ProtocalHandler是协议处理器接口,不同的协议各自实现,类图如下: Connector 源码://1public Connecto...原创 2018-04-23 23:31:58 · 3702 阅读 · 0 评论 -
JavaEE Servlet技术
Tomcat是一个Servlet容器,实现了Servlet规范,可以运行我们自己编写的Servlet应用程序处理动态请求,并返回响应,下面介绍Listener、Filter、Servlet、Request、Respones这几个比较常见的对象元素。1. ListenerServlet规范中定义了很多监听器,基于观察者模式将主要流程的控制/管理和事件的响应处理分离。主要分为两类: ...原创 2018-04-24 11:08:48 · 311 阅读 · 0 评论 -
Tomcat请求处理一个请求的过程
Connector组件是Tomcat两个核心组件之一(另一个是Container),主要任务是负责接收客户端发过来的TCP连接请求,创建一个Request和Response对象用于和请求端交换数据。Tomcat使用Apache Coyote库来处理网络I/O的。Connector是通过适配器将自己“置入”这个框架中的,具体是org.apache.catalina.connector.Coy...原创 2018-04-24 15:09:02 · 4715 阅读 · 0 评论 -
Servlet 启动过程
新增Web应用时创建注入ContextConfig对象;//org.apache.catalina.startup.Tomcat#addWebapp public Context addWebapp(Host host, String url, String name, String path) { silence(host, url);//1. 创建standar...原创 2018-04-25 09:36:21 · 714 阅读 · 0 评论 -
StandardContext 启动详解
StandardContext初始化过程StandardContext的启动主要由startInternal ()完成的 本方法主要完成以下功能:1.所有Children容器[wrapper]的启动 2.初始化WebappLoader 3.实例化contextManager并启动 等………启动过程源码://org.apache.catalina.core.Standar...原创 2018-04-28 11:18:56 · 3055 阅读 · 0 评论