tomcat7中server.xml处理一个http请求过程

本文详细介绍了Tomcat处理HTTP请求的过程,从客户端发起请求开始,依次经过Connector、Service、Engine、Host及Context等组件,最终由特定的Servlet处理请求并生成响应。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于一次访问过程,主要有以下几个步骤,假设来自客户的请求为: http://localhost:8080
/test/index.jsp

1 )请求被发送到本机端口 8080 ,被在那里侦听的 HTTP Connector 获得;
2 Connector 把该请求交给它所在的 Service Engine 来处理,并等待来自 Engine
的回应;
3 Engine 获得请求 localhost/test/ index.jsp ,匹配它所拥有的所有虚拟主机 Host
4 Engine 匹配到名为 localhost Host (即使匹配不到也把请求交给该 Host 处理,
因为该
Host 被定义为当前 Engine 的默认主机);
5 localhost Host 获得请求 /test/index.jsp ,匹配它所拥有的所有 Context
6 Host 匹配到路径为 /test Context (如果匹配不到就把该请求交给路径名为 ""
Context 去处理);
7 path="/test" Context 获得请求 /index.jsp ,在它的 mapping table 中寻找对应的
Servlet
8 Context 匹配到 URL PATTERN *.jsp Servlet ,对应于 JspServlet 类;
9 HttpServletRequest 对象和 HttpServletResponse 对象,作为参数调用 JspServlet
doGet doPost 方法;
10 Context 把执行完了之后的 HttpServletResponse 对象返回给 Host
11 Host HttpServletResponse 对象返回给 Engine
12 Engine HttpServletResponse 对象返回给 Connector
13 Connector HttpServletResponse 对象返回给客户浏览器。
这样,一次的请求响应过程结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值