LifeServlet.java:

package cn.itcast.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LifeServlet extends HttpServlet {
	public LifeServlet() {
		System.out.println("construction");
	}

	public void init() throws ServletException {
		System.out.println("in init");
	}

	public void service(HttpServletRequest arg0, HttpServletResponse arg1)
			throws ServletException, IOException {
		System.out.println("in service");
	}

	public void destroy() {
		System.out.println("in destroy");
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {

	}

	public void doPos(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {

	}
}



web.xml:

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                      http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  version="3.1"
  metadata-complete="true">
  

            
    <servlet>
        <servlet-name>helloWorldServlet</servlet-name>
        <servlet-class>cn.itcast.servlet.HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>helloWorldServlet</servlet-name>
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>
    
    <servlet>
        <servlet-name>LifeServlet</servlet-name>
        <servlet-class>cn.itcast.servlet.LifeServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>LifeServlet</servlet-name>
        <url-pattern>/LifeServlet</url-pattern>
    </servlet-mapping>
 
  
</web-app>

验证:

要能够验证到destroy的话,则是需要在工程中重新Redeploy

Servlet生命周期_xml


      servlet生命周期:servlet当第一次访问的时候,构造方法执行,创建servlet 实例,会调用init方法完成初始化操作。会开启一个线程,去调用service方法。当下次再被访问时,servlet会再次开启一个线程去调用service方法。也就是说:servlet实例会常驻内存,init方法只被调用一次。service方法是每一次请求开启一个线程来调用service方法。destroy方法只有servlet关闭时,会被调用,用于销毁servlet...