標籤:str servlet 路徑 檔案 資料庫連接 生命週期 引擎 mda 解析
原始內容:https://www.tutorialspoint.com/jsp/jsp_life_cycle.htm
在這一章中,我們將討論JSP的生命週期。
理解JSP低層次功能的關鍵在於——理解它們所遵循的、最簡單的生命週期。
JSP的生命週期就是指“它從建立到銷毀”的這一過程。
這個過程和servlet的生命週期很相似,
只不過增加了額外的一步,需要先把JSP編譯成servlet。
JSP所遵循的路徑
下面就是JSP所遵循的路徑 −
JSP生命週期的4個主要階段與servlet的生命週期十分相似。4個階段如所示 −
彙編
當一個瀏覽器請求一個JSP頁面的時候,JSP引擎首先檢查它是否需要編譯這個頁面。如果這個頁面從未被編譯,或者,這個頁面已經被修改,JSP引擎將編譯這個頁面。
這個彙編過程包括以下三步 -
- 解析JSP.
- 把JSP轉化為一個servlet.
- 編譯servlet.
JSP的初始化
當容器載入一個JSP的時候,最先被調用的是 jspInit() 方法。如果你需要在這個時候做點什麼,請重寫這個方法 -
public void jspInit(){ // Initialization code...}
通常,初始化只會被執行一次,在這個時候,你可以:初始化資料庫連接、開啟某些檔案、建立“查詢表”等
JSP的執行
這一階段,JSP將與請求打交道。
每當瀏覽器請求一個已經被初始化的JSP頁面的時候,
JSP引擎將在調用在JSP中的 _jspService() 方法,該方法接收一個 HttpServletRequest 和一個 HttpServletResponse 作為參數,如下所示 -
void _jspService(HttpServletRequest request, HttpServletResponse response) { // Service handling code...}
JSP的 _jspService() 方法基於特定的HTTP請求產生相應的響應。這些HTTP請求可能是 GET、POST、DELETE等等。
JSP的清除
當JSP不再被使用的時候,就會被容器移除。
你可以通過覆蓋 方法,在JSP清除的時候做點什麼,比如說關閉資料庫連接,關閉檔案啊,諸如此類 -
public void jspDestroy() { // Your cleanup code goes here.}
JSP筆記05——生命週期(轉)