Servlet 简介及其执行流程

简介: 一、什么是Servlet?首先明确一点:先有Servlet后有JSP,JSP的前身是ServletServlet是在服务器上运行的小程序。一个Servlet就是一个Java类,并且可以通过“请求--响应”编程模式来访问这个驻留在服务器内存里的Servlet程序 二、Tomcat容器等级:Tomcat容器分为四个等级,1.
一、什么是Servlet?
首先明确一点:先有Servlet后有JSP,JSP的前身是Servlet
Servlet是在服务器上运行的小程序。一个Servlet就是一个Java类,并且可以通过“请求--响应”编程模式来访问这个驻留在服务器内存里的Servlet程序
 
二、Tomcat容器等级:
Tomcat容器分为四个等级,
1. Container 容器,集装箱
2.Engine 引擎容器
3.Host 主机()
4.Servlet容器(tomcat最低级别的容器)里面包含了一个或多个Context
—— Context (上下文,背景,环境) 一个context对应一个web项目
—— Wrapper 容器里的封装部分。
(Tomcat容器包含4个等级,从高到低分别是Container容器,Engine引擎容器、Host主机容器与Servlet容器,其中Servlet的容器管理Context容器(称为上下文),一个Context对应一个Web工程)
 
三、Servlet层级关系:
Servlet(接口)-->GenericServlet(抽象类,与协议无关的Servlet)-->HttpServlet(抽象类,实现了Http协议的Servlet)-->Custom Servlet(自定义的Servlet)。
创建一个Servlet需要经过以下步骤:
(1)新建一个Java类,继承“javax.servlet.http.HttpServlet”;
(2)实现“doGet()”方法和“doPost()”方法;
(3)在应用配置文件“web.xml”中注册新建的Servlet;
 
xml文件配置:
 
Servlet接口(init(),service()destory())GenerciServlet(协议无关 抽象类) - HttpServlet (Http协议 doGet doPost 抽象类)
WebXml配置:
<Servlet>
 <Servlet-name>HelloServlet<Servlet-name>
 <Servlet-class>所在包.HelloServlet</Servlet-class>
<Servlet>
<Servlet-mapping>
 <Servlet-name>HelloServlet</Servlet-name>
 <url-patern>/虚拟路径</url-patern>
</Servlet-mapping>
四、Servlet执行流程
 
1.客户端发送请求给服务器。
2.服务器开始接受,先判断该请求的servlet实例是否存在,如果不存在先装载一个servlet类并创建实例。如果存在则直接调用该servlet的service方法,之后进行判断是调用doGet方法还是doPost方法。
3.servlet创建实例后,调用init方法进行初始化。之后调用servce方法,判断是调用doGet方法还是doPost方法。
4.最后判断服务是否关闭,如果关闭则调用destroy方法。
 
(开始----Servlet实例是否存在----装载Servlet类并创建实例 构造方法----调用init(Servlet)类并创建实例----调用service(Servlet Requst Servlet Response)方法----服务器关闭-----调用Destroy的方法)


 
访问Servlet流程
 
1、提交超链接请求后,服务器会在web.xml中的<servlet-mapping>寻找对应的url(url-pattern)地址,然后得到这个servlet的名称。
2、得到名称后,在servlet中寻找名称相同的标签,然后得到处理类(servlet-class文件)
3、进入servlet处理类,根据请求方式(get或者post)执行d(oGet或者doPost)方法

相关文章
|
1月前
|
XML 安全 Java
Servlet 教程 之 Servlet 简介 3
Servlet是运行在Web服务器上的Java程序,用于处理HTTP请求和响应,与数据库或应用交互。相比CGI,Servlet性能更优,平台无关,并受服务器安全管理器保护。它们主要任务包括读取客户端数据、处理信息、生成结果及发送响应。Servlet利用javax.servlet和javax.servlet.http包构建,遵循Java Servlet 2.5和JSP 2.1规范,可被编译成Java类运行。
17 1
|
5月前
|
Java 应用服务中间件 容器
Servlet简介、执行流程及生命周期
Servlet简介、执行流程及生命周期
38 1
|
7月前
|
小程序 Java API
04JavaWeb基础 - Servlet简介
04JavaWeb基础 - Servlet简介
19 0
|
9月前
|
XML Java 应用服务中间件
Servlet简介和环境设置
Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。 使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。 总而言之,Servlet 是用于处理 Web 请求和响应的标准 Java 技术,是 Web 应用程序开发不可或缺的组成部分。
48 0
|
9月前
|
小程序 Java 应用服务中间件
Servlet简介
Servlet简介
62 0
Servlet简介
|
11月前
|
缓存 Java
Servlet的执行流程、生命周期
Servlet的执行流程、生命周期
84 0
|
Java 应用服务中间件
Servlet第三篇【request和response简介、response的常见应用】(三)
Tomcat收到客户端的http请求,会针对每一次请求,分别创建一个代表请求的request对象、和代表响应的response对象
182 0
Servlet第三篇【request和response简介、response的常见应用】(三)