愚人碼頭

          知恥而后勇,知不足而進
          隨筆 - 33, 文章 - 1, 評論 - 26, 引用 - 0
          數據加載中……

          JSP編譯過程

          很久以來,都知道JSP其實就是Servlet,今天心血來潮,想把里面的具體代碼看一遍,并記錄心得。
          一個編譯好的JSP類如下:
          public
           final class index_jsp extends HttpJspBase
              
          implements JspSourceDependent
          //上述類為index.jsp被編譯后得到的類
          //HttpJspBase是extends HttpServlet的一個類
          //JspSourceDependent是一個接口,只聲明了一個方法、、getDependants(),返回當前page所依賴的文件的名稱,文件包括以下幾種
          //1) files that are included by page directives 
          //2) files that are included by include-prelude and include-coda in jsp:config 
          //3) files that are tag files and referenced 
          //4) TLDs referenced
          其核心方法為:
            public void _jspService(HttpServletRequest request, HttpServletResponse response)
                  
          throws IOException, ServletException{
          .
          }
          該方法重載HttpJspBase中的_jspService方法,進行頁面解析,包括對scriptlet的加載,html的生成,自定義Tag的解析等等
          HttpJspBase的service再對_jspService再進行調用,最終生成HTML頁面

          posted on 2007-12-18 12:06 船夫 閱讀(1911) 評論(1)  編輯  收藏 所屬分類: java技術

          評論

          # re: JSP編譯過程[未登錄]  回復  更多評論   

          太難簡單了點
          2009-03-10 13:47 | Dennis
          主站蜘蛛池模板: 彭泽县| 双柏县| 原阳县| 那坡县| 沙洋县| 鄯善县| 昌黎县| 淮南市| 抚远县| 卢湾区| 本溪| 富宁县| 光泽县| 微山县| 响水县| 乌苏市| 色达县| 濉溪县| 马龙县| 沧州市| 泌阳县| 安塞县| 肥城市| 丽江市| 安国市| 牡丹江市| 和静县| 林西县| 东阿县| 金沙县| 特克斯县| 嵊州市| 邵阳县| 合山市| 汕尾市| 卢氏县| 绵竹市| 荔浦县| 靖宇县| 四平市| 阿图什市|