愚人碼頭

          知恥而后勇,知不足而進(jìn)
          隨筆 - 33, 文章 - 1, 評(píng)論 - 26, 引用 - 0
          數(shù)據(jù)加載中……

          JSP編譯過程

          很久以來,都知道JSP其實(shí)就是Servlet,今天心血來潮,想把里面的具體代碼看一遍,并記錄心得。
          一個(gè)編譯好的JSP類如下:
          public
           final class index_jsp extends HttpJspBase
              
          implements JspSourceDependent
          //上述類為index.jsp被編譯后得到的類
          //HttpJspBase是extends HttpServlet的一個(gè)類
          //JspSourceDependent是一個(gè)接口,只聲明了一個(gè)方法、、getDependants(),返回當(dāng)前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方法,進(jìn)行頁面解析,包括對(duì)scriptlet的加載,html的生成,自定義Tag的解析等等
          HttpJspBase的service再對(duì)_jspService再進(jìn)行調(diào)用,最終生成HTML頁面

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

          評(píng)論

          # re: JSP編譯過程[未登錄]  回復(fù)  更多評(píng)論   

          太難簡(jiǎn)單了點(diǎn)
          2009-03-10 13:47 | Dennis
          主站蜘蛛池模板: 平邑县| 陈巴尔虎旗| 满城县| 吴江市| 柏乡县| 浦县| 闵行区| 六安市| 祁东县| 即墨市| 宝坻区| 蒙自县| 徐闻县| 抚顺市| 奎屯市| 隆昌县| 襄汾县| 饶平县| 土默特右旗| 澜沧| 长丰县| 道孚县| 和顺县| 盐亭县| 靖州| 昌图县| 温州市| 天门市| 东兴市| 南宁市| 黄龙县| 鲁甸县| 什邡市| 乐昌市| 隆安县| 广饶县| 房山区| 台南市| 宜州市| 马鞍山市| 鄂尔多斯市|