码迷,mamicode.com
首页 > 其他好文 > 详细

Tomcat架构详解(三) Request和Response处理的全过程

时间:2015-08-31 15:16:22      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:tomcat   tomcat架构   

从Tomcat源码分析(二)可知,用户的一个请求会经过n个环节的处理,最后到达开发人员写的Servlet,传给Servlet也就是HttpServletRequest和HttpServletResponse,因此可以认为这一路走下来无非就是把最原始的Socket包装成Servlet里用到的HttpServletRequest和HttpServletResponse,只不过每个环节完成的包装功能和部分不一样而已,信息流如下图所示:

技术分享

其中,Request与Response的类图如下所示:

技术分享

org.apache.coyote.Request和org.apache.coyote.Response是Tomcat内部使用的,不提供给开发者调用,类是final类型的。下面结合一次完整请求的时序图来看看从Socket到org.apache.catalina.connector.Request的加工过程:

技术分享

由上图可见,Request的解析和加工过程不是在一个方法里搞定,而是信息流动过程中逐步解析的,不同层次的处理器解析不同层次的信息,在解析过程同时做了些判断和拦截的工作,比如当发现是要访问WEB-INF的资源,会直接返回错误给客户端等等。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Tomcat架构详解(三) Request和Response处理的全过程

标签:tomcat   tomcat架构   

原文地址:http://blog.csdn.net/li295214001/article/details/48133989

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!