您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)JSP文件中生命周期的7個(gè)階段是什么的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。
JSP文件的生命周期分:解析、編譯、類加載、實(shí)例化、初始化、請(qǐng)求處理、銷毀,七個(gè)階段。
JSP文件是以.jsp擴(kuò)展名保存的,這使的服務(wù)器在知道這是一個(gè)JSP文件,需要經(jīng)歷幾個(gè)JSP生命周期階段。
下面我們就來(lái)具體看看JSP文件的生命周期的每個(gè)階段是什么,有什么作用:
1、JSP文件的解析(預(yù)處理)階段
當(dāng)客戶端向Server(服務(wù)器)發(fā)出請(qǐng)求時(shí),JSP文件首先會(huì)被轉(zhuǎn)到servlet容器里;然后在servlet容器里被解析,轉(zhuǎn)換為Servlet源文件(.java文件)
2、編譯階段
在servlet容器里編譯servlet源文件(.java文件),生成servlet類(.class文件)
JSP總體執(zhí)行流程圖
3、類加載階段
類加載器加載類文件,容器會(huì)檢查servlet類是否比jsp文件舊(確保JSP文件被修改)。
如果JSP文件被修改,那么容器將再次執(zhí)行轉(zhuǎn)換(將JSP轉(zhuǎn)換為Servlet),否則它會(huì)跳過(guò)轉(zhuǎn)換階段(即,如果JSP網(wǎng)頁(yè)未被修改,那么它不會(huì)進(jìn)行轉(zhuǎn)換以提高性能,因?yàn)榇穗A段需要時(shí)間)。
4、實(shí)例化階段
創(chuàng)建生成Servlet的對(duì)象,實(shí)例化servlet類
5、初始化階段
當(dāng)載入JSP文件后,容器會(huì)在為請(qǐng)求提供任何服務(wù)前調(diào)用jspInit()方法,始化servlet實(shí)例(僅當(dāng)servlet文件的實(shí)例未運(yùn)行或者它比jsp文件舊時(shí),Jsp容器才會(huì)執(zhí)行此階段。)
public void jspInit(){ // 初始化代碼 }
6、請(qǐng)求處理階段
容器會(huì)創(chuàng)建一個(gè)新線程,調(diào)用_jspService()方法,請(qǐng)求(HttpServletRequest)和響應(yīng)(HttpServletRespnse)對(duì)象作為該方法的參數(shù)。
void _jspService(HttpServletRequest req,HttpServletResponse res) { // 代碼 }
7、銷毀階段
調(diào)用jspDestroy()方法來(lái)銷毀servlet類的實(shí)例
public void jspDestory() { //刪除servlet類實(shí)例的代碼 }
感謝各位的閱讀!關(guān)于JSP文件中生命周期的7個(gè)階段是什么就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。