愚人碼頭

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

          JSP編譯過(guò)程

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

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

          評(píng)論

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

          太難簡(jiǎn)單了點(diǎn)
          2009-03-10 13:47 | Dennis
          主站蜘蛛池模板: 吴江市| 盐亭县| 禹州市| 乐业县| 舟曲县| 巴中市| 栾城县| 龙岩市| 九寨沟县| 台安县| 金溪县| 赤城县| 霍林郭勒市| 丰原市| 阜新市| 睢宁县| 太康县| 普宁市| 宿松县| 宁武县| 进贤县| 乾安县| 中宁县| 德阳市| 常宁市| 大田县| 温宿县| 广宁县| 门源| 鲁山县| 应城市| 东宁县| 永善县| 哈尔滨市| 松潘县| 黄平县| 平利县| 兴隆县| 宁武县| 丰县| 如皋市|