JSP学习之三:EL & JSTL(二)
CoffeeTree 2008-12-27
一、JSTL(JSP Standard Tag Library):JSP 标准标记库
1. JSTL应用领域:
a) 设置作用域变量、显示表达式和值、删除作用域变量、捕获异常的通用标记;
b) 条件流程控制标记,包括if和switch…case之类的构造;
c) 循环标记,用于对集合中或计循环中的元素进行迭代处理;
d) URL标记,用于在JSP中处理URL以及通过URL加载资源;
e) 支持应用国际化的标记;
f) 格式化日期和数字的标记;
g) 用于字符串处理的一组EL可访问函数。
2. 标记库剖析:
下图构成了一个标记库的代码和描述文件
3. JSTL标记
a) 核心标记
b) 格式化标记
c) XML标记
d) SQL标记
二、探索core
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
1. 核心标记就是一组最常用的JSTL标记。
a. 用于条件流程控制的<c:if>;
b. 用于循环的<c:forEach> 和<c:forTokens>;
c. 用于互斥代码中控制选择流程的<c:choose>…<c:when>…<c:otherwise>;
d. 用于处理作用域变量的<c:set>和<c:remove>;
e. 用于显示变量和表达式的<c:out>;
f. 用于处理异常的<c:catch>;
g. 用于创建和处理URL的<c:url>.
value 属性用来指定基本 URL,然后在必要时标记对其进行转换。如果这个基本 URL 以一个斜杠开始,那么会在它前面加上 servlet 的上下文名称。可以使用 context 属性提供显式的上下文名称。如果省略该属性,那么就使用当前 servlet 上下文的名称。(如果这个基本 URL 不是以斜杠开始的,那么就认为它是一个相对 URL,这时就不必添加上下文名称。)
如果为 var 属性提供了一个值(还可以同时为 scope 属性提供一个相应的值,这是可选的),那么将生成的 URL 赋值给这个限定了作用域的指定变量。