1、启动:init();[单例,第一次访问时初始化]

2、服务:service();[每次请求都会触发运行] --》属于多线程编程,来一个请求,就拿出一个线程来服务客户

3、销毁:destroy();[web应用stop、servlet容器shutdown]

4、代码演示如下:


package com.tiger.servlet.life;

import java.io.*;
import javax.servlet.*;
import javax.servlet.annotation.*;
/**
* Servlet的生命周期
* 1、启动:init();[单例,第一次访问时初始化]
* 2、服务:service();[每次请求都会触发运行]
* --》属于多线程编程,来一个请求,就拿出一个线程来服务客户
* 3、销毁:destroy();[web应用stop、servlet容器shutdown]
* @author tiger
* @time 2017年9月7日
*/
@WebServlet("/servletLife")
public class ServletLife extends GenericServlet {

private static final long serialVersionUID = 1L;
int count = 0;
@Override
public void init() throws ServletException {
System.out.println("ServletLife.init() count = "+ (count++) + ";线程名字:" + Thread.currentThread().getName());
}

@Override
public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
System.out.println("ServletLife.service() count = "+ (count++) + ";线程名字:" + Thread.currentThread().getName());
}

@Override
public void destroy() {
System.out.println("ServletLife.destroy() count = "+ (count++) + ";线程名字:" + Thread.currentThread().getName());
}
}