無線&移動互聯網技術研發

          換位思考·····
          posts - 19, comments - 53, trackbacks - 0, articles - 283
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

                JSTL是由JCP(Java Community Process)所制定的標準規范,它主要提供給Java Web開發人員一個標準通用的標簽函數庫。

          l       JSTL所提供的標簽函數庫主要分為五大類:

          Ø       核心標簽庫 (Core tag library)

          Ø       I18N格式標簽庫 (I18N-capable formatting tag library)

          Ø       SQL標簽庫 (SQL tag library)

          Ø       XML標簽庫 (XML tag library)

          Ø       函數標簽庫 (Functions tag library)

          JSTL

          前置名稱

          URI

          范例

          核心標簽庫

          c

          http://java.sun.com/jsp/jstl/core

          <c:out>

          I18N格式標簽庫

          fmt

          http://java.sun.com/jsp/jstl/fmt

          <fmt:formatDate>

          SQL標簽庫

          sql

          http://java.sun.com/jsp/jstl/sql

          <sql:query>

          XML標簽庫

          xml

          http://java.sun.com/jsp/jstl/xml

          <x:forBach>

          函數標簽庫

          fn

          http://java.sun.com/jsp/jstl/functions

          <fn:split>

          l       使用標準的uriprefix

          Ø       tld文件放在WEB-INF或其子目錄下面

          Ø       WEB-INF/web.xml中定義taglib元素,指定自定義的uri及其對應的tld文件位置

              <taglib>

                    <taglib-uri>/jstl/core</taglib-uri>

                <taglib-location>/WEB-INF/c.tld</taglib-location>

              </taglib>

          Ø       JSP里使用自定義的uri

              <%@ taglib uri="/jstl/core" prefix="c" %>

          以下主要說明了core標簽庫:

          分類

          功能分類

          標簽名稱

          core

          表達式操作

          out

          set

          remove

          流程控制

          if

          choose

              when

              otherwise

          迭代操作

          forEach

          forTokens

          URL操作

          redirect

          應用時需要在JSP頁面導入標簽庫:<%@ taglib uri="/jstl/core" prefix="c" %>

          <c:out/>

          屬性:

          EL

          默認值

          value

          需要顯示出來的值

          Y

          Object

          default

          如果value的值為null,則顯示default的值

          Y

          Object

          escapeXml

          是否轉換特殊字符,如:< 轉換成 &lt;

          Y

          boolean

          true

          <c:set />

          說明:主要用來將變量儲存至JSP范圍中或是JavaBean的屬性中

          屬性:

          EL

          類型

          必須

          默認值

          value

          要被儲存的值

          Y

          Object

          var

          欲存入的變量名稱

          N

          String

          scope

          var變量的JSP范圍

          N

          String

          page

          target

          為一JavaBeanjava.util.Map對象

          Y

          Object

          property

          指定target對象的屬性

          Y

          String

          <c:remove />

          說明:主要用來移除變量

          屬性:

          EL

          類型

          必須

          默認值

          var

          欲移除的變量名稱

          N

          String

          scope

          var變量的JSP范圍

          N

          String

          page

          <c:if />

          屬性

          EL

          默認值

          test

          如果表達式的結果為true

          則執行本體內容,false則相反

          Y

          boolean

          var

          用來儲存test運算后的結果,即truefalse

          N

          String

          scope

          var變量的JSP范圍

          N

          String

          page

          <c:choose /><c:when /><c:otherwise />

          說明:用途就和我們一般在程序中用的when一樣

          <c:choose>

            

             <c:when>

             </c:when>

            

             <c:otherwise>

             </c:otherwise>

            

          </c:choose>

          屬性:

          EL

          類型

          必須

          默認值

          test

          如果表達式的結果為true,則執行本體內容,false則相反

          Y

          boolean

          <c:forEach />

          說明:循環控制,它可以將集合(Collection)中的成員循序瀏覽一遍。運作方式為當條件符合時,就會持續重復執行<c:forEach>的本體內容

          屬性:

          EL

          類型

          必須

          默認值

          var

          用來存放現在指到的成員

          N

          String

          items

          被迭代的集合對象

          Y

          Arrays

          Collection

          Iterator

          Enumeration

          Map

          String

          varStatus

          用來存放現在指到的相關成員信息

          N

          String

          begin

          開始的位置

          Y

          int

          0

          end

          結束的位置

          Y

          int

          最后一個成員

          step

          每次迭代的間隔數

          Y

          int

          1

          varStatus屬性的四個值:

          index

          number

          現在指到成員的索引

          count

          number

          總共指到成員的總數

          first

          boolean

          現在指到的成員是否為第一個成員

          last

          boolean

          現在指到的成員是否為最后一個成員

          <c:forTokens />

          說明:用來瀏覽一字符串中所有的成員,其成員是由定義符號(delimiters)所分隔的

          屬性:

          EL

          默認值

          var

          用來存放現在指到的成員

          N

          String

          items

          被迭代的字符串

          Y

          String

          delims

          定義用來分割字符串的字符

          N

          String

          varStatus

          用來存放現在指到的相關成員信息

          N

          String

          begin

          開始的位置

          Y

          int

          0

          end

          結束的位置

          Y

          int

          最后一個成員

          step

          每次迭代的間隔數

          Y

          int

          1


           

          URL 重寫是由 <c:url/>操作自動執行的

          <c:url value="/index.jsp" context="<%= request.getContextPath() %>" scope="request" var="indexUrl">

              <c:param name="param1">value1</c:param>

              <c:param name="param2">value2</c:param>

          </c:url>

          url重定向<c:redirect/>

          <c:redirect>

              <c:param name=""></c:param>

          </c:redirect>

          格式化標簽

          以下四個是相對來說較常用的日期、數字的格式化

          <fmt:formatDate value="" scope="" pattern="" var="" timeStyle="" timeZone="" type="" dateStyle=""/>

          <fmt:parseDate value="" scope="" pattern="" var="" timeStyle="" timeZone="" dateStyle="" parseLocale="" type="" ></fmt:parseDate>

          <fmt:formatNumber value="" scope="" currencyCode="" currencySymbol="" groupingUsed="" maxFractionDigits="" maxIntegerDigits="" minFractionDigits="" minIntegerDigits="" pattern="" type="" var=""></fmt:formatNumber>

          <fmt:parseNumber value="" integerOnly="" parseLocale="" pattern="" scope="" type="" var=""></fmt:parseNumber>

          以下涉及到地區環境、失去、properties配置文件、設置請求編碼,這些功能不是很常用

          <fmt:setLocale value="" scope="" variant=""/>

          <fmt:timeZone value=""></fmt:timeZone>

          <fmt:setTimeZone value="" scope="" var=""/>

          <fmt:bundle basename="" prefix=""></fmt:bundle>

          <fmt:setBundle basename="" scope="" var=""/>

          <fmt:message bundle="" key="" scope="" var=""></fmt:message>

          <fmt:param value=""></fmt:param>

          <fmt:requestEncoding value=""/>

          主站蜘蛛池模板: 凤冈县| 蓬安县| 嵊泗县| 镶黄旗| 荔波县| 汝城县| 广西| 吉水县| 长沙县| 潞西市| 昌乐县| 衡山县| 景德镇市| 阳东县| 遂川县| 临安市| 鄂州市| 兴国县| 靖宇县| 永年县| 兴义市| 永仁县| 商洛市| 汶上县| 西乌珠穆沁旗| 建湖县| 疏附县| 湘潭县| 昭苏县| 姜堰市| 左贡县| 双辽市| 绥宁县| 嘉义市| 郓城县| 双峰县| 皮山县| 柏乡县| 高碑店市| 江孜县| 丹巴县|