(JavaEE-11)JSTL標籤庫

#JSTL標籤庫html

JSTL是SUN公司已經開發好的一套標籤庫,供咱們直接使用,它分爲:java

  • 核心標籤庫
  • 國際化標籤
  • 數據庫標籤
  • XML標籤
  • JSTL函數(EL函數)

##核心標籤庫數據庫

###<c:out>標籤服務器

  • <c:out> 標籤用於輸出一段文本內容到pageContext對象當前保存的「out」對象中
  • 屬性:
    • 屬性名:value,支持EL表達式,類型爲Object,指定要輸出的內容
    • 屬性名:escapeXml,支持EL表達式,類型爲boolean,指定是否將>、<、&、'、" 等特殊字符進行HTML編碼轉換後再進行輸出。默認值爲true
    • 屬性名:default,支持EL表達式,類型爲Object,指定若是value屬性的值爲null時所輸出的默認值

###<c:set>標籤session

  • <c:set>標籤用於把某一個對象存在指定的域範圍內,或者設置Web域中的java.util.Map類型的屬性對象或JavaBean類型的屬性對象的屬性
    • 屬性名:value,支持EL表達式,類型爲Object,用於指定屬性值
    • 屬性名:var,不支持EL表達式,類型爲String,用於指定要設置的Web域屬性的名稱
    • 屬性名:scope,不支持EL表達式,類型爲String,用於指定屬性所在的Web域
    • 屬性名:target,支持EL表達式,類型爲Object,用於指定要設置屬性的對象,這個對象必須是JavaBean對象或java.util.Map對象
    • 屬性名:property,支持EL表達式,類型爲String,用於指定當前要爲對象設置的屬性名稱

###<c:remove>標籤app

  • <c:remove>標籤用於刪除各類Web域中的屬性
    • 其語法格式以下:<c:remove var="varName" [scope="{page|request|session|application}"] />

###<c:catch>標籤jsp

  • <c:catch>標籤用於捕獲嵌套在標籤體中的內容拋出的異常,其語法格式以下:<c:catch [var="varName"]>nested actions</c:catch>函數

  • var屬性用於標識<c:catch>標籤捕獲的異常對象,它將保存在page這個Web域中編碼

    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ page contentType="text/html;charset=gb2312" %> <c:catch var="myex「 scope=「page」> <% 10/0; %> </c:catch> 異常:<c:out value="${myex}" /> ${myex}<br /> 異常 myex.getMessage:<c:out value="${myex.message}" /><br /> 異常 myex.getCause:<c:out value="${myex.cause}" /><br /> 異常 myex.getStackTrace:<c:out value="${myex.stackTrace}" />url

###<c:if>標籤

  • <c:if test=「」>標籤能夠構造簡單的「if-then」結構的條件表達式
    • 屬性名:test,支持EL表達式,類型爲boolean,決定是否處理標籤體中的內容的條件表達式
    • 屬性名:var,不支持EL表達式,類型爲String,用於指定將test屬性的執行結果保存到某個Web域中的某個屬性的名稱
    • 屬性名:scope,不支持EL表達式,類型爲String,指定將test屬性的執行結果保存到哪一個Web域中

###<c:choose>標籤

  • <c:choose>標籤用於指定多個條件選擇的組合邊界,它必須與<c:when>和<c:otherwise>標籤一塊兒使用。使用<c:choose>,<c:when>和<c:otherwise>三個標籤,能夠構造相似 「if-else if-else」 的複雜條件判斷結構

    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ page contentType="text/html;charset=gb2312" %> <c:set value="${param.count}" var="count「 /> pageContext(count,2) <c:choose> <c:when test="${count == 0}"> 對不起,沒有符合您要求的記錄。 </c:when> <c:otherwise> 符合您要求的記錄共有${count}條. </c:otherwise> </c:choose>

###<c:forEach>標籤

  • <c:forEach>標籤用於對一個集合對象中的元素進行循環迭代操做,或者按指定的次數重複迭代執行標籤體中的內容
    • 屬性名:var,不支持EL表達式,類型爲String,指定將當前迭代到的元素保存到page這個Web域中的屬性名稱
    • 屬性名:varStatus,不支持EL表達式,類型爲String,記住用於保存迭代信息的對象
    • 屬性名:items,支持EL表達式,任何支持的類型,將要迭代的集合對象
    • 屬性名:begin,支持EL表達式,類型爲 int,若是指定items屬性,就從集合中的第begin個元素開始進行迭代,begin的索引值從0開始編號;若是沒有指定items屬性,就從begin指定的值開始迭代,直到end值時結束迭代
    • 屬性名:end,支持EL表達式,類型爲 int,參看begin屬性的描述
    • 屬性名:step,支持EL表達式,類型爲 int,指定迭代的步長,即迭代因子的迭代增量

###<c:param>標籤

  • 在JSP頁面進行URL的相關操做時,常常要在URL地址後面附加一些參數。<c:param>標籤能夠嵌套在<c:import>、<c:url>或<c:redirect>標籤內,爲這些標籤所使用的URL地址附加參數
  • <c:param>標籤在爲一個URL地址附加參數時,將自動對參數值進行URL編碼,例如,若是傳遞的參數值爲「中國」,則將其轉換爲「%d6%d0%b9%fa」後再附加到URL地址後面,這也就是使用<c:param>標籤的最大好處
  • 示例:<c:param name="name" value="value" />

###<c:url>標籤

  • <c:url>標籤用於在JSP頁面中構造一個URL地址,其主要目的是實現URL重寫。URL重寫就是將會話標識號以參數形式附加在URL地址後面
    • 屬性名:value,支持EL表達式,類型爲String,指定要構造的URL
    • 屬性名:var,不支持EL表達式,類型爲String,指定將構造出的URL結果保存到Web域中的屬性名稱
    • 屬性名:scope,不支持EL表達式,類型爲String,指定將構造出的URL結果保存到哪一個Web域中

###<c:redirect>標籤

  • <c:redirect>標籤用於實現請求重定向
    • 屬性名:url,支持EL表達式,類型爲String,指定要轉發或重定向到的目標資源的URL地址
    • 屬性名:context,支持EL表達式,類型爲String,當要使用相對路徑重定向到同一個服務器下的其餘WEB應用程序中的資源時,context屬性指定其餘WEB應用程序的名稱
相關文章
相關標籤/搜索