您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關JSP技術怎樣實現(xiàn)動態(tài)頁面到靜態(tài)頁面的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
JSP技術實現(xiàn)動態(tài)頁面到靜態(tài)頁面的方案第一:
為了能深入淺出的理解這個框架的由來,我們首先來了解一下JSP解析器將我們寫的JSP代碼轉換成的JAVA文件的內(nèi)容。
下面是一個JSP文件test.jsp
﹤%@pagelanguage=javacontentType=text/html;charset=GB2312%﹥ ﹤% out.write(﹤!--文件開始--﹥); %﹥ ﹤html﹥ ﹤head﹥ ﹤body﹥ ﹤%=輸出%﹥ ﹤/body﹥ ﹤/head﹥ ﹤/html﹥ 經(jīng)過Tomcat轉換出的Java文件test$jsp.java內(nèi)容如下: packageorg.apache.jsp; importjavax.servlet.*; importjavax.servlet.http.*; importjavax.servlet.jsp.*; importorg.apache.jasper.runtime.*; publicclasstest$jspextendsHttpJspBase{ static{ } publictestOutRedir$jsp(){ }
JSP技術怎樣實現(xiàn)動態(tài)頁面到靜態(tài)頁面
privatestaticboolean_jspx_inited=false; publicfinalvoid_jspx_init()throwsorg.apache.jasper.runtime.JspException{ } publicvoid_jspService(HttpServletRequestrequest,HttpServletResponseresponse) throwsjava.io.IOException,ServletException{ JspFactory_jspxFactory=null; PageContextpageContext=null; HttpSessionsession=null; ServletContextapplication=null; ServletConfigconfig=null; JspWriterout=null; Objectpage=this; String_value=null; try{ if(_jspx_inited==false){ synchronized(this){ if(_jspx_inited==false){ _jspx_init(); _jspx_inited=true; } } } _jspxFactory=JspFactory.getDefaultFactory(); response.setContentType(text/html;charset=GB2312); pageContext=_jspxFactory.getPageContext(this,request,response, ,true,8192,true); application=pageContext.getServletContext(); config=pageContext.getServletConfig(); session=pageContext.getSession(); out=pageContext.getOut(); //為了節(jié)省篇幅,我刪除了解釋器添加的注釋 out.write(\r\n); //上一句是由于 ﹤%@pagelanguage=javacontentType=text/html;charset=GB2312%﹥后面的換行產(chǎn)生的 out.write(﹤!--文件開始--﹥); out.write(\r\n﹤html﹥\r\n﹤head﹥\r\n﹤body﹥\r\n); out.print(輸出); out.write(\r\n﹤/body﹥\r\n﹤/head﹥\r\n﹤/html﹥\r\n); }catch(Throwablet){ if(out!=null&&out.getBufferSize()!=0) out.clearBuffer(); if(pageContext!=null)pageContext.handlePageException(t); }finally{ if(_jspxFactory!=null)_jspxFactory.releasePageContext(pageContext); } } }
從上面的代碼中可以清晰的看到JSP內(nèi)建的幾個對象(out、request、response、session、pageContext、application、config、page)是怎么產(chǎn)生的,懂servlet的朋友一看就能明白。
感謝各位的閱讀!關于“JSP技術怎樣實現(xiàn)動態(tài)頁面到靜態(tài)頁面”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。