`

Servlet 工作原理

 
阅读更多

1.1 Servlet 的生命周期

Servlet 的生命周期主要有下列三个过程组成:

(1)初始化 servlet。servlet 第一次被请求加载时,服务器初始化这个 servlet,即创

建一个 servlet 对象,这对象调用 init 方法完成必要的初始化工作。

(2)诞生的 servlet 对象再调用 service 方法响应客户的请求。

(3)当服务器关闭时,调用 destroy方法,消灭 servlet 对象。

init 方法只被调用一次,即在 servlet 第一次被请求加载时调用该方法。当后续的客户

请求 servlet 服务时,Web 服务将启动一个新的线程,在该线程中,servlet 调用 service 方法响应客户的请求,也就是说,每个客户的每次请求都导致 service方法被调用执行。


1.2init 方法

该方法是HttpServlet 类中的方法,我们可以在servlet 中重写这个方法。

方法描述:

public void init(ServletConfig config)throws ServletException

servlet 第一次被请求加载时,服务器初始化一个 servlet,即创建一个 servlet 对象,

这个对象调用 init 方法完成必要的初始化工作。该方法在执行时,servlet 引擎会把一个SevletConfig 类型的对象传递给 init()方法,这个对象就被保存在 servlet 对象中,直到

servlet 对象被消灭,这个 ServletConfig 对象负责向 servlet 传递服务设置信息,如果传递

失败就会发生ServeletException,servlet 就不能正常工作。

当多个客户请求一个servlet时,引擎为每个客户启动一个线程,那么servlet 类的成员变量被所有的线程共享。


1.3 service 方法

该方法是HttpServlet 类中的方法,我们可以在servlet 中直接继承该方法或重写这个

方法。

方法描述:

public void service(HttpServletRequestrequest HttpServletResponse

response)throw ServletException,IOException

当 servlet成功创建和初始化之后,servlet 就调用 service 方法来处理用户的请求并

返回响应。Servlet 引擎将两个参数传递给该方法,一个 HttpServletRequest 类型的对象,该对象封装了用户的请求信息,此对象调用相应的方法可以获取封装的信息,即使用这个对

象可以获取用户提交的信息。另外一个参数对象是 HttpServletResponse 类型的对象,该对

象用来响应用户的请求。和init 方法不同的是,init 方法只被调用一次,而 service 方法可

能被多次的调用,我们已经知道,当后续的客户请求 servlet 服务时,Servlet 引擎将启动一

个新的线程,在该线程中,servlet调用 service 方法响应客户的请求,也就是说,每个客户

的每次请求都导致service 方法被调用执行,调用过程运行在不同的线程中,互不干扰。


1.4 destroy 方法

该方法是HttpServlet 类中的方法。servlet 可直接继承这个方法,一般不需要重写。

方法描述:

public destroy()

当 Servlet引擎终止服务时,比如关闭服务器等,destroy()方法会被执行,消灭 servlet

对象。


分享到:
评论

相关推荐

    Servlet 工作原理解析

    Servlet 工作原理解析

    servlet工作原理

    ### Servlet工作原理详解 #### 一、Servlet简介与工作流程 Servlet是一种服务器端的Java应用程序,主要用于接收客户端发送的HTTP请求,并返回响应结果。Servlet在Java Web开发中扮演着核心角色,它负责处理用户...

    servlet工作原理(2)

    ### servlet工作原理(2) #### 一、Servlet基础与重定向机制 在Java Web开发领域,Servlet技术扮演着至关重要的角色。它不仅为开发者提供了一种标准的方式来处理客户端请求,而且还是构建动态Web应用程序的核心...

    JSP+JavaBean+Servlet工作原理

    **JSP+JavaBean+Servlet工作原理**: 1. **用户请求**:用户通过浏览器向服务器发送HTTP请求,请求的目标是一个JSP页面。 2. **JSP翻译**:服务器接收到请求后,如果JSP页面尚未被编译,会将其转换为一个Servlet源...

    Servlet工作原理解析PDF版

    ### Servlet工作原理深入解析 #### 一、引言 随着互联网技术的快速发展,Web应用程序已成为企业和个人进行在线交互的重要手段。在众多Web开发框架和技术中,Servlet作为一种基于Java的服务器端编程模型,自诞生...

    Servlet工作原理问答共2页.pdf.zip

    Servlet工作原理的深入理解对于任何希望在Web开发领域有所建树的开发者都至关重要。以下是对Servlet工作原理的详细阐述: 1. **Servlet定义**:Servlet是Java编程语言中的一组接口,由Sun Microsystems(现为Oracle...

    servlet工作原理解析

    ### Servlet工作原理与生命周期解析 #### 一、Servlet概述 Servlet是Java Web开发中的核心组件之一,主要用于处理客户端发送到服务器端的HTTP请求,并生成相应的响应。Servlet技术由Sun Microsystems在1997年推出...

    Servlet生命周期与工作原理

    下面我们将详细探讨这三个阶段以及Servlet的工作原理。 1. **初始化阶段** 当Servlet容器(如Tomcat)启动时,可以通过在`web.xml`配置文件中设置`<load-on-startup>`标签来指定Servlet在服务器启动时自动加载,其...

    深入Java Web心脏:Servlet工作原理全解析

    ### 深入Java Web心脏:Servlet工作原理全解析 #### Java语言概述 Java作为一种流行的编程语言,由Sun Microsystems(现归Oracle所有)于1995年首次发布。其设计初衷是为了满足跨平台性、面向对象编程、健壮性、...

    servlet工作原理讲解

    详细讲解servlet的机制及使用方法,其中有非常容易理解的实例和图解,推荐。

    Servlet运行原理图

    Servlet运行原理图,描述servlet运行的步骤方向和servlet运行过程

    Jsp+JavaBean循序渐进教程+Servlet工作原理实例

    JSP+JavaBean+Servlet三层结构的实质是多了一个Controller:Servlet来分发客户端浏览器的请求。如果把起控制器作用的Servlet的作用理解为对客户端的请求进行预处理对理解Servlet将有很大的帮助。通过web.XML配置文件...

Global site tag (gtag.js) - Google Analytics