Servlet一—生命周期
一.概述
一个完整的Servlet生命周期如下:
- 加载Servlet类
- 创建Servlet实例
- 调用init()方法
- 调用service()方法
- 调用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()方法。同时,虚拟机会将其作为垃圾回收。
本文详细介绍了Servlet的生命周期,包括Servlet类的加载、实例的创建、初始化方法init()的调用、服务方法service()的工作原理以及销毁方法destroy()的执行时机。
560

被折叠的 条评论
为什么被折叠?



