1. 程式人生 > >JSTL(JavaServer Pages Standard Tag Library)

JSTL(JavaServer Pages Standard Tag Library)

JSTL(JavaServer Pages Standard Tag Library,JSP標準標籤庫)是一個不斷完善的開放原始碼的JSP標籤庫。

之前有學過c++的STL,剛開始還以為JSTL是java的STL。。。

大致簡介:

JSTL 1.0 釋出於 2002 年 6 月,由四個定製標記庫(core、format、xml 和 sql)和一對通用標記庫驗證器(ScriptFreeTLV 和 PermittedTaglibsTLV)組成。core 標記庫提供了定製操作,通過限制了作用域的變數管理資料,以及執行頁面內容的迭代和條件操作。它還提供了用來生成和操作 URL 的標記。顧名思義,format 標記庫定義了用來格式化資料(尤其是數字和日期)的操作。它還支援使用本地化資源束進行 JSP 頁面的國際化。xml 庫包含一些標記,這些標記用來操作通過 XML 表示的資料,而 sql 庫定義了用來查詢關係資料庫的操作。

如果要使用JSTL,則必須將jstl.jar和 standard.jar檔案放到classpath中,如果你還需要使用XML processing及Database access (SQL)標籤,還要將相關JAR檔案放到classpath中,這些JAR檔案全部存在於下載回來的zip檔案中。菜鳥教程JSTL中有。

常用標籤:

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>

<c:set var="name" scope="scope" value="expression"/>

<-- scope 屬性是可選的,其預設值是 page -->

<c:remove var="timezone" scope="session"/>

<c:out value="expression" default="expression" escapeXml="boolean" />

escapeXml 屬性也是可選的。它控制當用 <c:out> 標記輸出諸如“<”、“>”和“&”之類的字元(在 HTML 和 XML 中具有特殊意義)時是否應該進行轉義。如果將 escapeXml 設定為 true,則會自動將這些字元轉換成相應的 XML 實體(此處提到的字元分別轉換成 < 、 > 和 & )。

<c:forEach items="<object>" begin="<int>" end="<int>"  step="<int>" var="<string>" varStatus="<string>">
屬性 描述 是否必要 預設值
items 要被迴圈的資訊
begin 開始的元素(0=第一個元素,1=第二個元素) 0
end 最後一個元素(0=第一個元素,1=第二個元素) Last element
step 每一次迭代的步長 1
var 代表當前條目的變數名稱
varStatus 代表迴圈狀態的變數名稱

varStatus 對應的是一個物件,有屬性index表示當前索引號,count表示da計數(從1開始)