Servlet一(生命周期)

Servlet一—生命周期

一.概述

一个完整的Servlet生命周期如下:

  1. 加载Servlet类
  2. 创建Servlet实例
  3. 调用init()方法
  4. 调用service()方法
  5. 调用destroy()方法

二.生命周期详解:

1. 加载Servlet类:

当Servlet容器启动时,容器就会加载所有Servlet类和相关配置文件。当容器启动完成后,才能接受用户访问请求。

2. 创建Servlet实例

在加载Servlet类时,同时也会创建Servlet实例。一个Servlet一般只有一个实例。

3. 调用init()方法

init()的调用时间取决于选择的Servlet容器,可以在创建实例时调用,也可以在用户发起第一次请求时调用。因为一个Servlet在容器中只会存在一个实例,所以init()也只会调用一次。init相应的参数可以在web.xml中配置。

4. 调用service()方法

当用户发起get或post等请求时,Servlet会首先调用service()方法,然后再转向doGet或是doPost方法。在编写代码时,可以不必处理service()方法,只需重写doGet或doPost即可。

5. 调用destroy()方法

当Servlet容器关闭或重启时,容器会对每一个Servlet的实例调用destroy()方法。同时,虚拟机会将其作为垃圾回收。

猜你喜欢

转载自blog.csdn.net/xiaolicd/article/details/81611250