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

servlet研究之一 servlet生命周期概述

阅读更多
1.servlet的类架构及重要方法。
类架构主要分成三层
    第一层是Servlet接口它里面有方法init(),service(),destroy()
    第二层是抽象类GenercServlet它实现了第一层Servlet接口的init()和destroy()两个方法
    第三层抽象类HtpServlet类它继承第二层GenercServlet实现Servlet接口,它还对不同的请求调用不同的do方法有doGet()和doPost()两种常用的
重要方法
    init()初始化以及创建Servlet对像;
    service()对请求进行响应;
    destroy()销毁Servlet对像;

2.请用文字说明servlet的生命周期。
装载并实例化-->调用init()-->启动线程调用Servicec()-->销毁对像

3.servlet加载
     servlet加载(实例化)由servlet容器控制。servlet可以在应用服务器启动时实例化,这些servlet会在web.xml中定义,并配置这个参数 <load-on-startup>n</load-on-startup>n的数字越小,优先级越高。如果不配置或者小于0则表示在客户端发出请求时才加载这个servlet。
     如果没有事先在web.xml中定义服务器启动时装载,那么在服务运行中,第一次请求servlet时才被实例化。

4.servlet初始化
    在初始化期间,Servlet实例可能通过抛出UnavailableException 或者 ServletException异常表明它不能进行有效服务。
   如果一个Servlet抛出一个这样的异常,它将不会被置入有效服务并且应该被容器立即释放。在此情况下destroy方法不会被调用因为初始化没有成功完成。在失败的实例被释放后,容器可能在任何时候实例化一个新的实例,对这个规则的唯一例外是如果失败的Servlet抛出的异常是UnavailableException并且该异常指出了最小的无效时间,那么容器就会至少等待该时间指明的时限才会重新试图创建一个新的实例。

5.servlet销毁
    容器没有被要求将一个加载的Servlet保存多长时间,因此一个Servlet实例可能只在容器中存活了几毫秒,当然也可能是其它更长的任意时间(但是肯定会短于容器的生存期)当容器决定将之移除时(原因可能是保存内存资源或者自己被关闭),那么它必须允许Servlet释放它正在使用的任何资源并保存任何永久状态(这个过程通过调用destroy方法达到)。容器在能够调用destroy方法前,它必须允许那些正在service方法中执行的线程执行完或者在服务器定义的一段时间内执行(这个时间段在容器调用destroy之前)。一旦destroy方法被调用,容器就不会再向该实例发送任何请求。如果容器需要再使用该Servlet,它必须创建新的实例。destroy方法完成后,容器必须释放Servlet实例以便它能够被垃圾回收。
分享到:
评论

相关推荐

    Servlet-Servlet生命周期

    #### 三、Servlet生命周期概述 Servlet的生命周期主要包括以下几个阶段: 1. **加载和实例化**:当服务器启动时或者首次访问Servlet时,服务器会加载并实例化Servlet。 2. **初始化**:初始化阶段由`init()`方法...

    servlet生命周期演示代码

    #### 一、Servlet 生命周期概述 在深入分析代码之前,我们先来了解一下 Servlet 的生命周期。Servlet 的生命周期主要包括三个阶段:初始化 (`init` 方法)、请求处理 (`service` 方法) 和销毁 (`destroy` 方法)。 1...

    Servlet生命周期

    ### Servlet 生命周期详解 #### 一、概述 Servlet 是 Java Web 开发的核心技术之一,用于处理客户端的 HTTP 请求并返回响应。了解 Servlet 的生命周期对于更好地控制和优化 Web 应用程序至关重要。Servlet 的生命...

    servlet生命周期

    #### 三、Servlet生命周期详解 ##### 实例化 - **按需创建**:默认情况下,当第一次HTTP请求到达时,容器会创建Servlet的实例。 - **预加载**:通过在`web.xml`中配置`&lt;load-on-startup&gt;`标签,可以在应用启动时...

    Servlet Jsp 技术概述 pdf

    Servlet生命周期包括加载、初始化、服务和销毁四个阶段。在实际应用中,Servlet常用于处理复杂的业务逻辑和数据库操作。 JSP则是一种视图技术,它的主要目的是简化HTML页面的生成。JSP页面由HTML代码和嵌入其中的...

    Servlet Jsp 技术概述

    Servlet生命周期包括加载、初始化、服务、销毁等阶段,具备高度可定制性和灵活性。 JSP则是一种视图技术,它是HTML代码和Java代码的混合,用于创建动态网页。JSP文件首先被Web容器转换成Servlet,然后编译为Java类...

    servlet原理的概述

    servlet的生命周期主要由三个阶段组成:初始化(init)、服务(service)和销毁(destroy)。 1. **初始化(init)**:当servlet第一次被加载时,容器会调用servlet的`init`方法。这是servlet进行初始化操作的地方...

    servlet技术初步入门

    Servlet生命周期包括加载、初始化、服务、销毁四个阶段。通过继承HttpServlet类并覆盖doGet、doPost等方法,可以处理HTTP请求。 二、Servlet工作流程 1. 客户端发起HTTP请求到服务器。 2. 服务器接收到请求后,通过...

    Servlet+Jsp+技术概述

    Servlet生命周期包括加载、初始化、服务、销毁等阶段,可以处理多种类型的请求,并且具有高度可扩展性。通过重写`service()`方法,开发者可以根据不同的HTTP方法(GET、POST等)实现不同的业务逻辑。 **JSP概述** ...

    Servclet 生命周期

    ### Servlet 生命周期详解 #### 一、概述 Servlet 是 Java Web 开发的核心技术之一,它主要用于构建动态网页。Servlet 的生命周期是指从Servlet 被加载到 Servlet 容器中直到最终被销毁的过程。在这个过程中,...

    servlet 笔记

    #### 三、Servlet生命周期 Servlet的生命周期主要包括三个阶段:初始化、服务和销毁。 - **初始化**:通过调用init()方法完成。 - **服务**:通过调用service()方法响应客户端请求。 - **销毁**:通过调用destroy()...

    servlet容器工作原理

    通过了解`javax.servlet.Servlet`接口的基本概念及其在Servlet生命周期中的作用,读者可以更好地理解Servlet容器的内部机制。 #### 二、Servlet容器的基本概念 Servlet容器是一种用于部署和执行Servlet的软件环境...

    servlet-api.jar 下载地址

    总的来说,servlet-api.jar是Java Web开发的基础,它定义了Servlet的生命周期和行为,使得开发者能够构建出高性能、可扩展的Web应用。随着技术的不断发展,虽然直接操作Servlet的场景有所减少,但理解Servlet API...

    Servlet 的API文档

    六、Servlet生命周期 Servlet的生命周期包括加载、初始化、服务和销毁四个阶段: 1. 加载:Web容器根据`web.xml`或其他配置加载Servlet类。 2. 初始化:创建Servlet实例并调用`init()`方法。 3. 服务:每当有请求...

    Servlet+API+中文版

    #### 三、Servlet生命周期 - **初始化阶段**:在Servlet实例化后,容器会调用`init()`方法进行初始化操作。开发者可以在该方法中设置必要的参数或加载资源。 - **服务阶段**:当客户端发送请求到服务器时,容器会...

    Servlet技术.pdf

    ### Servlet技术概述与核心知识点解析 #### 一、Servlet技术...通过对Servlet生命周期的理解、与JSP的关系分析、运行环境的配置以及示例代码的解读,开发者能够更好地利用Servlet技术,提升Web应用的性能和用户体验。

Global site tag (gtag.js) - Google Analytics