Servlet学习教程(二)----Servlet容器处理请求过程图解

上篇文章大致介绍的请求的流转,本文主要是详细介绍一下容器处理请求的过程。

第一步,用户点击一个链接指向一个servlet,而不是静态页面。

第二步,容器可以分辨出请求指向servlet,所以容器会产生两个对象:

1.HttpServletRequest

2.HttpServletResponse

第三步,容器对请求的URL根据配置找到对应的servlet,为这个请求创建或者分配一个线程,并将请求和响应对象传递给这个Servlet线程。

第四步,容器会调用Servlet的service方法,根据请求的不同类型,service()方法会调用servlet的doPost()或者doGet()方法,对应页面form表单是post还是get数据。

第五步,doGet()或者doPost()生成的动态页面塞进响应中(容器持有响应对象的引用)

第六步,线程结束,容器把响应转换为HTTP响应给客户,然后删除请求与响应对象。

时间: 2024-11-08 19:01:41

Servlet学习教程(二)----Servlet容器处理请求过程图解的相关文章

Servlet学习教程(一)----什么是Servlet以及Servlet容器

官方规范翻译过来的. Servlet是基于Java技术的web组件,容器托管的,用于生成动态内容.像其他基于Java的组件技术一样,Servlet也是基于平台无关的Java类格式,被编译为平台无关的字节码,可以被基于Java技术的web server动态加载并运行.容器,有时候也叫做servlet引擎,是web server为支持servlet功能扩展的部分.客户端通过Servlet容器实现的请求/应答模型与Servlet交互. Servlet容器是web server或application

Servlet学习教程(三)---- 一个简单的Servlet例子

我们用个最简单的Servlet例子来解说一下Servlet简单配置以及Servlet类实现类的写法. 第一,我们新建一个Dynamic Web Project,起名Servlet 点击NEXT,设置Default output folder 为Servlet/WebContent/WEB-INF/classes 第二,创建一个包,包名为Servlet,然后创建一个类名为WelcomeServlet类.(Servlet类当然缺少不了Servlet容器,请注意你的开发软件是否已经集成Servlet容

《Servlet学习笔记》Servlet生命周期和调用

    学习技术有时会感觉很枯燥,有时感觉很绕,N多调用,不好理解,但如果能画出图来,就可以一目了然. 图比文字更容易让人接受,并产生深刻印象.一张图可以包含很多东西. 下面一些图来自于网络,偶然间发现,感觉让人忽然明白并回忆起了好多. Servlet程序是由WEB服务器调用,web服务器收到客户端的Servlet访问请求后: Web服务器首先检查是否已经装载并创建了该Servlet的实例对象.如果是,则直接执行第四步,否则,执行第二步: 装载并创建该Servlet的一个实例对象: 调用Serv

《Servlet学习笔记》Servlet开发细节

Servlet开发细节1.由于客户端是通过URL地址访问web服务器中的资源,所以Servlet程序若想被外界访问,必须把servlet程序映射到一个URL地址上,这个工作在web.xml文件中使用<servlet>元素和<servlet-mapping>元素完成.2.<servlet>元素用于注册Servlet,它包含有两个主要的子元素:<servlet-name>和<servlet-class>,分别用于设置Servlet的注册名称和Serv

web应用程序servlet的映射名称的规则及请求过程

首先用MyEclipse创建一个web Project(工程名起为TestServletProject),新建一个Servlet(这里servlet的名字起TestServlet),将请求的servlet映射名称设为/TestServlet,(具体步骤可以查看tomcat上servlet程序的配置与处理servlet请求过程).并在TestServlet的doGet方法中在控制台打印一句“this is TestServlet” jxf.servlet.TestServlet.java 1 pa

servlet学习笔记02 servlet类、对象

1.servlet主要类和接口的结构如下图所示: servlet常用类和接口javax.servlet.Servlet接口:规定了必须由servlet类实现由servlet引擎识别和管理的方法集,基本目标是提供生命周期方法init().service()和destroy()方法.Servlet接口中方法:void init(ServletConfig config)throws ServletException:在servlet被载入后和实施服务前由servlet引擎进行1次调用,如果产生Una

《Servlet学习笔记》Servlet接口实现类

Servlet接口SUN公司定义了两个默认实现类,分别为:GenericServlet.HttpServlet. HttpServlet指能够处理HTTP请求的Servlet,它在原有Servlet接口上添加了一些与HTTP协议处理方法,它比Servlet接口的功能更为强大.因此开发人员在开发Servlet的时候,通常应该继承这个类,而避免直接去实现Servlet接口. HttpServlet在实现Servlet接口时,覆写了service方法,该方法体内的代码会自动判断用户的请求方式,如为GE

《Servlet学习笔记》Servlet 简介

Servlet 简介:Servlet是sun公司提供的一门用于开发动态web资源的技术.Sun公司在其API中提供了一个servlet接口,用户若想开发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下两步:1.编写一个Java类,实现servlet接口:2.把开发好的Java类部署到web服务器中. jsp就是servletjavase.javaee,servlet不属于javase而属于javaeeservlet专门文档APITomcat可以运行servlet,lib

(Servlet学习笔记)Servlet的小范例

Web.xml <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <display-nam