- Servlet的生命周期
- Servlet类已加载
- Servlet实例创建
- 初始化方法被调用
- 服务方法被调用
- 调用destroy方法
- Servlet类已加载。
- Servlet实例已创建。
- 初始化方法被调用。
- 服务方法被调用。
- 调用destroy方法。
文章图片
如上图所示, servlet处于三种状态:新建, 就绪和结束。如果创建了servlet实例, 则servlet处于新状态。调用init()方法后, Servlet进入就绪状态。在就绪状态下, servlet执行所有任务。当Web容器调用destroy()方法时, 它将转换为结束状态。
1)加载Servlet类
类加载器负责加载servlet类。当Web容器收到对Servlet的第一个请求时, 将加载Servlet类。
2)创建Servlet实例
Web容器在加载servlet类之后创建servlet的实例。 Servlet实例在Servlet生命周期中仅创建一次。
3)init方法被调用
Web容器在创建Servlet实例后仅调用一次init方法。 init方法用于初始化servlet。它是javax.servlet.Servlet接口的生命周期方法。 init方法的语法如下: |
public void init(ServletConfig config) throws ServletException
4)服务方法被调用
每当接收到对Servlet的请求时, Web容器都会调用服务方法。如果未初始化servlet, 则它遵循上述的前三个步骤, 然后调用service方法。如果servlet被初始化, 它将调用service方法。注意, Servlet仅初始化一次。 Servlet接口的服务方法的语法如下:
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException
5)调用destroy方法
Web容器在从服务中删除Servlet实例之前调用destroy方法。它使Servlet有机会清理任何资源, 例如内存, 线程等。Servlet接口的destroy方法的语法如下:
public void destroy()
推荐阅读
- Servlet API基本介绍
- HttpServlet类介绍和用法示例
- Servlet如何工作(工作原理详细解释——)
- pthon-安装新版PyQt5PyQT5-tool后打不开并Designer.exe提示“This application failed to start because no Qt platfor
- 安卓开发之文件存储SharedPreferences
- 目前校园百晓生APP与CSDN软件的对比
- uniapp 微信支付(亲测可支付)
- Android持久化技术
- Android Studio git 使用