JSPServlet的生命周期

Servlet的生命周期据是面试的时候常问的问题,所以总结一下。

生命全过程:
加载 ClassLoader
实例化 new
初始化 init(ServletConfig)
处理请求 service doGet doPost
退出服务 destroy()

特别强调:

从头到尾只有一个对象,而且在客户端第一次访问Servlet的时候Tomcat new出一个对象。
init()//只执行一次, 第一次初始化的时候

处理请求是以多线程的方式处理的
destroy()//webapp 退出的时候

例子:

import java.io.IOException;

import javax.servlet.ServletConfig;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class TestLifeCycleServlet extends HttpServlet {

 

  public TestLifeCycleServlet() {

     System.out.println("Constructor!");

  }/构造函数new新对象的时候调用。,

 

  @Override

protected void doGet(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {

     System.out.println("doGet!");

  }//响应服务的时候调用

  @Override

  public void destroy() {

     System.out.println("destory!");

  }// webapp 退出的时候和卸载的时候调用。

原文地址:https://www.cnblogs.com/yujianjingjing/p/2621302.html