文档章节

二、Servlet生命周期和请求过程

swift_hua
 swift_hua
发布于 2017/06/25 22:00
字数 236
阅读 5
收藏 0

 图片

 

servlet的请求过程:

第一次请求:

1.解析请求信息

  localhost:本机

  8080端口:本机的端口为8080的程序tomcat

  /zxc : 上下文路径

  /HelloServlet: 资源名称

2.找到当前访问的项目根路径/zxc

3.从当前web项目根路径下/WEB-INF找到web.xml文件

4.从web.xml中找哪一个<url-pattern>的文本内容为/HelloServlet

5.根据/HelloServlet,找到对应的Servlet类的全限定名称

6.使用反射创建Servlet对象,调用构造器

  Servlet obj=Class.forName("..全限定名..").newInstance();

7.创建ServletConfig对象。使用servlet对象调用init方法

  obj.init(config);

8.创建req和resp对象,并调用service方法。

  obj.service(req,resp);

9.在service方法中给浏览器做响应

 

非第一次响应

1-5步和上相同

  从Servlet的实例缓存池中取出Servlet对象

  obj.service(req,resp);

9.问题:

  第8步的Servlet对象从何而来

 

 

© 著作权归作者所有

共有 人打赏支持
swift_hua
粉丝 0
博文 33
码字总数 20868
作品 0
成都
程序员
Tomcat如何与Servlet对象进行交互

Tomcat 是Web应用服务器,是一个Servlet/JSP容器. Tomcat作为Servlet容器,负责处理客户请求,把请求传送给Servlet,并将Servlet的响应传送回给客户.而Servlet是一种运行在支持Java语言的服务器上...

KeepMoving
2015/03/09
0
0
JavaWeb基础知识点之Servlet

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/w1lgy/article/details/79169527 一、servlet的概述 servlet是采用java编写的运行在服务器上的程序,用于接受...

我巴巴
01/26
0
0
Servlet 生命周期、工作原理

Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁。 init():在Servlet的生命周期中,仅执行一次init()方法。它是在服务器装入Servlet时执行的,负责初始化Servlet 对象。可以配...

ArlenXu
2015/01/24
0
0
JavaWeb09-HTML篇笔记(二)

1.1 案例一:使用Servlet完成一个用户登录的案例.1.1.1 需求: 在网站的首页上,登录的链接,点击登录的链接,可以跳转到登录的页面.在登录的页面中输入用户名和密码点击登录的案例.完成登录的功...

我是小谷粒
05/21
0
0
[转]通俗易懂Tomcat中Servlet的生命周期

我在上一篇文章里详细的介绍了 HTTP协议工作的流程,其中最重要的就是如何理解HTTP请求头和HTTP响应头,现在在这里再来详细的说明Tomcat 容器(即Servlet 容器)到底是如何 管理Servlet的,S...

穿越星辰
2010/05/13
0
2

没有更多内容

加载失败,请刷新页面

加载更多

Android WebView制作简易浏览器

最终效果 先创建一个WebView控件,其他的就是通过线性布局在上方加入网址输入框和两个按钮 <WebView android:id="@+id/act_webview_wv" android:layout_width="ma...

lanyu96
30分钟前
3
0
解决MacOS升级系统Sierra到Mojave后git报错

错误信息 升级MacOS Sierra到Mac Mojave后执行git命令报错: xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/......

阿dai
30分钟前
1
0
兄弟连区块链教程以太源码分析CMD深入分析(一)

cmd包分析 cmd下面总共有13个子包,除了util包之外,每个子包都有一个主函数,每个主函数的init方法中都定义了该主函数支持的命令,如 geth包下面的: func init() { // Initialize the...

兄弟连区块链入门教程
32分钟前
1
0
Titan Framework MongoDB深入理解1

在TitanFrameWork框架中,已经集成了MongoDB的各个功能,现在我们对框架内部的一些重要类进行分析与解读。 MongoDBConverter 在Titan框架中,比较重要的一个接口就是MongoDBConverter,它是作...

云季科技
37分钟前
1
0
SpringBoot集成Quartz

SpringBoot集成Quartz 什么是Quartz Quartz is a richly featured, open source job scheduling library that can be integrated within virtually any Java application - from the smalle......

Grittan
41分钟前
4
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部