`
jiagyao
  • 浏览: 99369 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Tomcat源码分析(四)------ Request和Response处理的全过程(转)

阅读更多
从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的资源,会直接返回错误给客户端等等。



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cutesource/archive/2009/12/28/5091732.aspx
分享到:
评论

相关推荐

    JSP企业宣传网站源代码

    - 使用`request.getParameter()`获取请求参数,处理业务逻辑,然后使用`response.sendRedirect()`或`response.getWriter().write()`返回响应。 5. **会话管理** - JSP提供了`session`对象,允许跨多个请求跟踪...

    毕业论文设计-IT计算机-JSP环境美容服务公司网站(论文+系统+摘要).zip

    9. **源码分析**:提供的源码可以作为深入学习JSP开发的实例,通过阅读和理解代码,学生可以更好地掌握JSP编程技巧和项目实践。 10. **摘要**:摘要部分是对整个毕业设计的简要概述,包括所采用的技术、实现的功能...

    JavaWeb图书管理系统MYSQL版 源码实例下载

    《JavaWeb图书管理系统MYSQL版 源码实例下载》是一个基于JavaWeb技术开发的...通过研究这个系统,开发者可以提升自己的JavaWeb开发技能,并了解到一个完整的项目是如何从需求分析、设计、编码到测试、部署的全过程。

    JavaWeb开发中文乱码问题解决方案

    在JavaWeb开发中,中文乱码问题是一个普遍且棘手的问题,主要出现在数据的输入、处理和输出过程中。中文字符由于其特殊的编码方式(如GBK、UTF-8等),在不同编码格式之间转换时容易出现乱码。为了解决这个问题,...

    基于servlet+jsp+mysql做的一个简易的网上书店项目源码,适合毕业设计

    这个项目为初学者提供了一个完整的Java Web应用实例,涵盖了从后端开发到前端展示,以及数据库操作的全过程,对于理解和实践Web应用开发流程非常有帮助。通过分析和运行这个项目,开发者可以深入理解Java Web技术栈...

    基于WEB的仓库管理系统的设计与实现(JAVA源码+数据库sql+论文+视频)

    总的来说,这个项目覆盖了从需求分析、系统设计到实际开发的全过程,是学习和实践Java Web开发的宝贵资料。通过深入研究和实践,不仅可以掌握Web开发的基本技能,还能了解到如何将理论知识应用于实际项目中。

    基于jsp的企业库存管理系统源码数据库.zip

    1. **JSP基础**:JSP是一种动态网页技术,通过内置的对象(如Request、Response、Session等)处理用户的请求,并可以通过JSP标签库(Taglibs)和EL(Expression Language)增强功能。 2. **Java Servlet**:JSP通常...

    基于jsp+ssh的失物招领管理系统源码数据库.zip

    1. **毕业设计**:这表明该系统可能是学生为完成毕业项目而开发的,涵盖了从需求分析、设计、编码到测试的全过程,体现了学生对Java Web开发的综合掌握。 2. **Java**:Java是后端开发的主要语言,用于处理业务逻辑...

    基于JSP的博客源代码

    通过`request`对象可以获取请求参数,而`response`对象用于构建响应内容。 7. **会话管理**:为了保持用户的登录状态,博客系统可能需要使用会话(session)对象。会话能够在多个请求之间持久化数据,例如用户的...

    JSP网上拍卖平台系统设计(源代码+论文).zip

    总的来说,这个压缩包内容涵盖了从需求分析、系统设计、编码实现到系统上线的全过程,是学习JSP和Web应用开发的一个宝贵实例。通过深入研究,不仅可以提升JSP编程技能,还能了解整个软件开发生命周期中的各种实践。

    《jsp项目开发全程实录》源代码

    通过深入研究这个源代码包,读者不仅可以掌握JSP的编程技巧,还能了解到一个完整的Web项目从设计到实现的全过程,提升自己的项目开发能力。每个小项目都是一次实战演练,读者可以在实践中不断积累经验,为将来更大的...

    【计算机毕业设计】免费下载政务网站源代码

    1. **Java Web开发基础**:理解JSP语法,包括内置对象(如request、response、session等)、脚本元素和指令,以及如何结合Servlet进行交互。 2. **MVC设计模式**:学习Spring MVC框架的工作原理,包括控制器的定义...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    是PDF电子书,不是源码。共分2个包。 《Java Web编程宝典(十年典藏版)》是一本集技能、范例、项目和应用为一体的学习手册,书中介绍了应用Java Web进行程序开发的各种技术、技巧。全书分4篇,共24章,其中,第1篇为...

Global site tag (gtag.js) - Google Analytics