Tomcat学习笔记1

目录结构

bin执行目录:sh文件liux上的,bat文件windows上的

lib:依赖的jar

conf:catalina.policy 权限相关 Permission Tomcat是跑在jvm上的,所以有 些默认的权限。

server.xml: Server节点->Service ->Executor(线程池)Connector连接器

Connector连接器 用线程池的话,connector里面的maxThreads是无效   的。

Executor (线程池)maxThreads 不设置的话一般是默认200

web.xml:DefaultServlet默认的,加载静态文件 html,js,jpg等静态文件。

JspServlet专门处理jsp

mime-mapping 文件类型,其实就是Tomcat处理的文件类型。

日志

catalina.xxxx.log 我们的Tomcat有问题,启动不了找这个文件

三种部署方式

隐式部署:webapps目录下

显式模式:

1server.xml中的Host加入一个Context(指定路径和文件地址)

2)conf/Catalina/localhost中创建xml文件(热部署),访问路径为文件    

Tomcat的架构

两大核心组件

Connector组件:连接器,主要负责Tomcat与客户端的通讯

Container组件:Servlet容器

一个请求的处理流程

httpConnector就是链接器

httpProcessor是具体的处理类

Container是容器(servlet)

 

 

下载源码(8.0版本):

http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.0.53/src/apache-tomcat-8.0.53-src.zip

安装百度下:https://www.jb51.net/article/95120.htm

 

Tomcat启动步骤

Bootstrap -> catalina -> server -> service -> connectorcontainer

 

初次看源码建议看到service即可(StandardService)

 

             Tomcat Server处理一个HTTP请求的过程

Tomcat Server处理一个HTTP请求的过程

1、用户点击网页内容,请求被发送到本机端口8080,被在那里监听的Coyote HTTP/1.1 Connector获得。 

2Connector把该请求交给它所在的ServiceEngine来处理,并等待Engine的回应。 

3Engine获得请求localhost/test/index.jsp,匹配所有的虚拟主机Host 

4Engine匹配到名为localhostHost(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机),名为localhostHost获得请求/test/index.jsp,匹配它所拥有的所有的ContextHost匹配到路径为/testContext(如果匹配不到就把该请求交给路径名为“ ”Context去处理)。 

5path=“/test”Context获得请求/index.jsp,在它的mapping table中寻找出对应的ServletContext匹配到URL PATTERN*.jspServlet,对应于JspServlet类。 

6、构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServletdoGet()或doPost().执行业务逻辑、数据存储等程序。 

7Context把执行完之后的HttpServletResponse对象返回给Host 

8HostHttpServletResponse对象返回给Engine 

9EngineHttpServletResponse对象返回Connector 

10ConnectorHttpServletResponse对象返回给客户Browser

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值