HelloServlet03:
package com.yuming.servlet;
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
/*
* servlet生命周期
*/
public class HelloServlet03 implements Servlet{
/**
* 生命周期1
* 在创建该servlet的实例时,就执行该方法。
一个servlet只会初始化一次, init方法只会执行一次
默认情况下是 : 初次访问该servlet,才会创建实例。
*/
public void init(ServletConfig arg0) throws ServletException {
// TODO Auto-generated method stub
System.out.println("init方法..........");
}
/**
* 生命周期2
* 只要客户端来了一个请求,那么就执行这个方法了。
该方法可以被执行很多次。 一次请求,对应一次service方法的调用
*/
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("service方法----------------");
}
/**
* 生命周期3
* servlet销毁的时候,就会执行该方法
1. 该项目从tomcat的里面移除。
2. 正常关闭tomcat就会执行 shutdown.bat
注:或者从server下移除项目也可执行该方法
*/
public void destroy() {
// TODO Auto-generated method stub
System.out.println("destory方法-------------------");
}
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return null;
}
public String getServletInfo() {
// TODO Auto-generated method stub
return null;
}
}
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>helloweb</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<!-- 向tomcat报告, 我这个应用里面有这个servlet, 名字叫做HelloServlet , 具体的路径是com.yuming.servlet.HelloServlet -->
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.yuming.servlet.HelloServlet</servlet-class>
</servlet>
<!-- 注册servlet的映射。 servletName : 找到上面注册的具体servlet, url-pattern: 在地址栏上的path 一定要以/打头 -->
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>HelloServlet02</servlet-name>
<servlet-class>com.yuming.servlet.HelloServlet02</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet02</servlet-name>
<url-pattern>/HelloServlet02</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>HelloServlet03</servlet-name>
<servlet-class>com.yuming.servlet.HelloServlet03</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet03</servlet-name>
<url-pattern>/HelloServlet03</url-pattern>
</servlet-mapping>
</web-app>
##Servlet的生命周期
* 生命周期
> 从创建到销毁的一段时间
* 生命周期方法
> 从创建到销毁,所调用的那些方法。
* init方法
在创建该servlet的实例时,就执行该方法。
一个servlet只会初始化一次, init方法只会执行一次
默认情况下是 : 初次访问该servlet,才会创建实例。
* service方法
只要客户端来了一个请求,那么就执行这个方法了。
该方法可以被执行很多次。 一次请求,对应一次service方法的调用
* destroy方法
servlet销毁的时候,就会执行该方法
1. 该项目从tomcat的里面移除。
2. 正常关闭tomcat就会执行 shutdown.bat
doGet 和 doPost不算生命周期方法,所谓的生命周期方法是指,从对象的创建到销毁一定会执行的方法, 但是这两个方法,不一定会执行。