1. 程式人生 > >JavaWeb-Servlet的生命週期

JavaWeb-Servlet的生命週期

 java檔案

package com.web.servlet;

import java.io.IOException;


import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class QuickStartServlet implements Servlet {

	// init方法是隨 Servlet 例項化而被呼叫的,只會執行一次
	@Override
	public void init(ServletConfig config) throws ServletException {
		// 獲得Servlet的name----<servlet-name>abc</servlet-name>
		String ServletName = config.getServletName();
		System.out.println("ServletNameL:" + ServletName);
		// 獲得Servlet初始化的一些引數
		String initParameter = config.getInitParameter("url");
		System.out.println("initParameter:" + initParameter);
		// 獲得Servletcontext物件
		ServletContext servletContext = config.getServletContext();

		System.out.println("init 正在執行....");// abc
	}

	// 每次請求都會執行
	@Override
	public void service(ServletRequest arg0, ServletResponse arg1)
			throws ServletException, IOException {
		System.out.println("QuickStartServlet 正在執行....");
	}

	// 銷燬,關閉伺服器的時候執行
	@Override
	public void destroy() {
		System.out.println("destroy 正在執行....");
	}

	@Override
	public ServletConfig getServletConfig() {
		return null;
	}

	@Override
	public String getServletInfo() {
		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>web02</display-name>
  <servlet>
  <servlet-name>abc</servlet-name>
  <servlet-class>com.web.servlet.QuickStartServlet</servlet-class>
  <init-param>
  <param-name>url</param-name>
  <param-value>jdbc:mysql:///mydb </param-value>
  </init-param>
  </servlet>
  
  <servlet-mapping>
  <servlet-name>abc</servlet-name>
  <url-pattern>/quickStartServlet</url-pattern>
  </servlet-mapping>
  
  
  
  
  
  <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>
</web-app>

Servlet的生命週期

Servlet的生命週期

1.Servlet何時建立
	預設第一次訪問Servlet時建立該物件
	init(ServletConfig config)
		ServletConfig:代表的是該Servlet物件的配置資訊
	
2.Servlet何時銷燬
	伺服器關閉 Servlet就銷燬了
	
3.每次訪問必執行的方法
	service(ServletRequest req, ServletResponse res)
		ServletRequest:代表請求,認為ServletRequest內部封裝的是http請求的資訊
		ServletResponse:代表響應,認為要封裝的是響應的資訊

在Servlet這裡拖了很久.今天終於有進度了,很開心.