日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jsp学习(1)jsp请求过程和生命周期

發布時間:2024/8/26 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jsp学习(1)jsp请求过程和生命周期 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、服務器處理jsp請求的過程:

以下步驟表明了 Web 服務器是如何使用JSP來創建網頁的:

1.瀏覽器發送一個 HTTP 請求給服務器。

2.Web 服務器識別出這是一個對 JSP 網頁的請求,并且將該請求傳遞給 JSP 引擎。通過使用 URL或者 .jsp 文件來完成。

3.JSP 引擎從磁盤中載入 JSP 文件,然后將它們轉化為 Servlet。這種轉化只是簡單地將所有模板文本改用 println() 語句,并且將所有的 JSP 元素轉化成 Java 代碼。生成一個java文件

4.JSP 引擎將 Servlet 編譯成可執行類,并且將原始請求傳遞給 Servlet 引擎。

5.Web 服務器的某組件將會調用 Servlet 引擎,然后載入并執行 Servlet 類。在執行過程中,Servlet 產生 HTML 格式的輸出并將其內嵌于 HTTP response 中上交給 Web 服務器。

6.Web 服務器以靜態 HTML 網頁的形式將 HTTP response 返回到您的瀏覽器中。

7.最終,Web 瀏覽器處理 HTTP response 中動態產生的HTML網頁,就好像在處理靜態網頁一樣。

二、以下是JSP生命周期中所走過的幾個階段:

1.jsp編譯

當瀏覽器請求JSP頁面時,JSP引擎會首先去檢查是否需要編譯這個文件。如果這個文件沒有被編譯過,或者在上次編譯后被更改過,則編譯這個JSP文件。

編譯的過程包括三個步驟:

解析JSP文件。

將JSP文件轉為servlet。

編譯servlet。

2.jsp初始化

容器載入JSP文件后,它會在為請求提供任何服務前調用jspInit()方法。如果您需要執行自定義的JSP初始化任務,復寫jspInit()方法就行了,就像下面這樣:

public void jspInit(){ // 初始化代碼 }

一般來講程序只初始化一次,servlet也是如此。通常情況下您可以在jspInit()方法中初始化數據庫連接、打開文件和創建查詢表。

3.Jsp執行

這一階段描述了JSP生命周期中一切與請求相關的交互行為,直到被銷毀。

當JSP網頁完成初始化后,JSP引擎將會調用_jspService()方法。

_jspService()方法需要一個HttpServletRequest對象和一個HttpServletResponse對象作為它的參數,就像下面這樣:

void _jspService(HttpServletRequest request, HttpServletResponse response) { // 服務端處理代碼 }

_jspService()方法在每個request中被調用一次并且負責產生與之相對應的response,并且它還負責產生所有7個HTTP方法的回應,比如GET、POST、DELETE等等。

4.jsp清理

JSP生命周期的銷毀階段描述了當一個JSP網頁從容器中被移除時所發生的一切。

jspDestroy()方法在JSP中等價于servlet中的銷毀方法。當您需要執行任何清理工作時復寫jspDestroy()方法,比如釋放數據庫連接或者關閉文件夾等等。

jspDestroy()方法的格式如下:

public void jspDestroy() { // 清理代碼 }

?

轉載于:https://www.cnblogs.com/yuby/p/10784387.html

總結

以上是生活随笔為你收集整理的jsp学习(1)jsp请求过程和生命周期的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。