天天看點

java----Servlet的生命周期

Servlet生命周期分為三個階段:

  1,初始化階段  調用init()方法

  2,響應客戶請求階段  調用service()方法

  3,終止階段  調用destroy()方法

Servlet初始化階段:

  在下列時刻Servlet容器裝載Servlet:

    1,Servlet容器啟動時自動裝載某些Servlet,實作它隻需要在web.XML檔案中的<Servlet></Servlet>之間添加如下代碼:

<loadon-startup>

1

</loadon-startup>

    2,在Servlet容器啟動後,客戶首次向Servlet發送請求

    3,Servlet類檔案被更新後,重新裝載Servlet

Servlet被裝載後,Servlet容器建立一個Servlet執行個體并且調用Servlet的init()方法進行初始化。在Servlet的整個生命周期内,init()方法隻被調用一次。

Servlet響應階段:       Servlet在接收和響應客戶請求的過程中,首先客戶發送一個請求。

     service()是在javax.servlet.Servlet接口中定義的, 在 javax.servlet.GenericServlet 中實作了這個接口,                                           而 doGet/doPost 則是在 javax.servlet.http.HttpServlet 中實作的, javax.servlet.http.HttpServlet 是 javax.servlet.GenericServlet 的子類. 所有可以這樣了解, 其實所有的請求均首先由 service() 進行處理, 而在 javax.servlet.http.HttpServlet 的 service() 方法中, 主要做的事情就是判斷請求類型是 Get 還是 Post, 然後調用對應的 doGet/doPost 執行.