隨筆-7  評論-24  文章-102  trackbacks-0


          1、什么是 JSTL 和 EL 表達式

                  JSP 標準標記庫(JSP Standard Tag Library,JSTL)是一個實現 Web 應用程序中常見的通用功能的定制標記庫集,這些功能包括迭代和條件判斷、數據管理格式化、XML 操作以及數據庫訪問。

                  EL是 JSTL 經過簡化的表達式語言,它允許在不必使用功能齊全的編程語言的情況下對 JSTL 操作指定動態屬性值。

           

          2、使用 JSTL 有什么好處

              首先,JSTL現在采用獨立于JSP標記的規范來定義。因此,即使JSP規范發生改動,也可以保證JSTL標記的一致性。容易受到JSP容器變更影響的許多應用程序都將受益于JSTL規范。
              其次,JSTL具有比核心JSP標記更強大的功能,正如您在最佳實踐系列中所視, c:import不僅 可以導入其它站點的URL,而且,它還可以導入 jsp:include 標記不可用的更為復雜的內容。
              最后,JSTL使用自己的表達式語言(expression language,EL)。JSTL EL可以相當靈活地寫入JSP代碼,是對核心JSP語言的有力補充。

              在JSP2.0中,通過使用 JSTL + EL,可以開發出沒有 Scriptlets 的 JSP 。這就使得 JSP 的開發非常簡單,非 JAVA 程序員都能勝任。另外,通過使用 JSTL,可以使編程的代碼量大大減少。



          3、學習入門

          developerWords中國 JSTL入門系列:
           
          第1部分, " JSTL 入門:表達式語言" (2003年2月) 
                  通過將常用功能包裝到定制標記庫的標準集合中,JSTL 使 JSP 作者可以減少對編制腳本元素的需求,甚至可以不需要它們,并避免了相關的維護成本。

          第2部分, " JSTL 入門:探討 core" (2003年3月)
                  JSTL core 庫為一些基本功能(如,管理限定了作用域的變量和與 URL 交互等)和基本操作(如,迭代和條件化)提供了定制標記。這些標記不僅可以由頁面設計人員直接利用,而且還為與其它 JSTL 庫相結合從而提供更復雜的表示邏輯奠定了基礎。

          第3部分, " JSTL 入門:表示就是一切" (2003年4月)
                  JSTL fmt 庫中的定制標記支持通過資源束對文本內容進行本地化,并支持對數字和日期的顯示和解析。

          第4部分, " JSTL 入門:訪問SQL和XML內容" (2003年5月)
                  如果您愿意接受將業務邏輯包含到表示層的結果,這兩個庫中的標記都使其能夠非常輕松地將XML文件和關系數據庫中的內容結合到JSP頁面。這兩個庫還展示了當集成<sql:query> 和<c:forEach>時,JSTL庫如何構建和集成,以及xml 庫利用<c:import> 操作的能力。

          其他: JSP 2.0: The New Deal, Part 1   EL 函數部分
                  當 EL 從 JSTL 規范中移到 JSP 規范中,它使用了一個如何進行函數調用的技巧。這個EL函數語法非常簡單:方法名,緊接著在圓括號中有一組參數:
                  <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
                  ${fn:length(myCollection)}



          4、參考手冊JSTL API Specifications  
          JSTL英文幫助文檔  Core JSTL: Mastering the JSP™ Standard Tag Library
          JSTL詳解 (中文,詳細的用戶手冊,網絡上有詳細的 Word版本下載) 

           
          其他JSTL 的 IF...ELSE...

          <c:choose>
             <c:when test="">    如果
             </c:when>
             
             <c:otherwise>  否則
             </c:otherwise>
          </c:choose>


          隱式對象        瀏覽器經常將request parameter作為文本發送,然而應用程序經常需要把他們作為數字類型、布爾類型(true 或者 false)來使用。通過EL,你根本就很少需要關心缺少某些參數的值或者類型轉換。

                  pageContext: 提供對頁面屬性的訪問。
                           ${pageContext.request.contextPath} 返回請求的上下文路徑  等內置屬性。

          posted on 2008-08-08 12:40 黃小二 閱讀(491) 評論(0)  編輯  收藏 所屬分類: J2EE
          主站蜘蛛池模板: 灵宝市| 台东县| 固原市| 沈丘县| 祁东县| 道真| 百色市| 塔河县| 丹棱县| 缙云县| 皋兰县| 高雄市| 教育| 武胜县| 左权县| 南安市| 巴林右旗| 湛江市| 盘山县| 宿州市| 正镶白旗| 永嘉县| 马公市| 安乡县| 武夷山市| 大连市| 康保县| 大足县| 杭锦旗| 皮山县| 钟山县| 旌德县| 镇远县| 赤峰市| 德庆县| 宜州市| 大化| 牙克石市| 德化县| 红安县| 凤山县|