JSP學(xué)習(xí)之三:EL & JSTL(二)
CoffeeTree 2008-12-27
一、JSTL(JSP Standard Tag Library):JSP 標(biāo)準(zhǔn)標(biāo)記庫
1. JSTL應(yīng)用領(lǐng)域:
a) 設(shè)置作用域變量、顯示表達(dá)式和值、刪除作用域變量、捕獲異常的通用標(biāo)記;
b) 條件流程控制標(biāo)記,包括if和switch…case之類的構(gòu)造;
c) 循環(huán)標(biāo)記,用于對集合中或計循環(huán)中的元素進(jìn)行迭代處理;
d) URL標(biāo)記,用于在JSP中處理URL以及通過URL加載資源;
e) 支持應(yīng)用國際化的標(biāo)記;
f) 格式化日期和數(shù)字的標(biāo)記;
g) 用于字符串處理的一組EL可訪問函數(shù)。
2. 標(biāo)記庫剖析:
下圖構(gòu)成了一個標(biāo)記庫的代碼和描述文件
3. JSTL標(biāo)記
a) 核心標(biāo)記
b) 格式化標(biāo)記
c) XML標(biāo)記
d) SQL標(biāo)記
二、探索core
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
1. 核心標(biāo)記就是一組最常用的JSTL標(biāo)記。
a. 用于條件流程控制的<c:if>;
b. 用于循環(huán)的<c:forEach> 和<c:forTokens>;
c. 用于互斥代碼中控制選擇流程的<c:choose>…<c:when>…<c:otherwise>;
d. 用于處理作用域變量的<c:set>和<c:remove>;
e. 用于顯示變量和表達(dá)式的<c:out>;
f. 用于處理異常的<c:catch>;
g. 用于創(chuàng)建和處理URL的<c:url>.
value 屬性用來指定基本 URL,然后在必要時標(biāo)記對其進(jìn)行轉(zhuǎn)換。如果這個基本 URL 以一個斜杠開始,那么會在它前面加上 servlet 的上下文名稱。可以使用 context 屬性提供顯式的上下文名稱。如果省略該屬性,那么就使用當(dāng)前 servlet 上下文的名稱。(如果這個基本 URL 不是以斜杠開始的,那么就認(rèn)為它是一個相對 URL,這時就不必添加上下文名稱。)
如果為 var 屬性提供了一個值(還可以同時為 scope 屬性提供一個相應(yīng)的值,這是可選的),那么將生成的 URL 賦值給這個限定了作用域的指定變量。