"JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断、数据管理格式化、XML 操作以及数据库访问。在 developerWorks 上其新系列的第一篇文章中,软件工程师 Mark Kolb 向您展示了如何使用 JSTL 标记来避免在 JSP 页面中使用脚本编制元素。您还将了解如何通过从表示层删除源代码来简化软件维护。最后,您将了解 JSTL 经过简化的表达式语言,它允许在不必使用功能齐全的编程语言的情况下对 JSTL 操作指定动态属性值。"
以上是定义。待续..
JSTL 1.0 发布于 2002 年 6 月,由四个定制标记库(
表达式语言(EL)提供了一些标识符、存取器和运算符,用来检索和操作驻留在 JSP 容器中的数据
在EL中定义了许多隐藏变量:
●pageContext:用于该网页的pageContext对象
●pageScope, requestScope, sessionScope, 和 applicationScope:这些是映射这些范围的每一个变量到值上的Map集。
●param 和 paramValues:用页访问传递的参数,与在JSP中一样
●header 和 headerValues:用页请求传递的头,与在JSP中一样
●cookie:Map映射cookie程序到特定的cookie对象上
EL 定义了全套与你在Java中非常熟悉的那些完全对应的操作符。算法操作符包括+、 -、 *、 / (或 div)、 和% (或 mod)。相关的操作符包括==、!=、<、>、<=、>=,它分别对应于eq、ne、lt、gt、le、和ge。我不想详细阐 述这些操作符,因为他们都能自我说明。
例子1:
使用JSP
使用JSTL
以上是定义。待续..
JSTL 1.0 发布于 2002 年 6 月,由四个定制标记库(
core
、
format
、
xml
和
sql
)和一对通用标记库验证器(
ScriptFreeTLV
和
PermittedTaglibsTLV
)组成。
core
标记库提供了定制操作,通过限制了作用域的变量管理数据,以及执行页面内容的迭代和条件操作。它还提供了用来生成和操作 URL 的标记。- 顾名思义,
format
标记库定义了用来格式化数据(尤其是数字和日期)的操作。它还支持使用本地化资源束进行 JSP 页面的国际化。 xml
库包含一些标记,这些标记用来操作通过 XML 表示的数据,- 而
sql
库定义了用来查询关系数据库的操作。
<c:set>
和
<c:remove>
用于管理限定了作用域的变量;而
<c:out>
用于显示数据
表达式语言(EL)提供了一些标识符、存取器和运算符,用来检索和操作驻留在 JSP 容器中的数据
在EL中定义了许多隐藏变量:
●pageContext:用于该网页的pageContext对象
●pageScope, requestScope, sessionScope, 和 applicationScope:这些是映射这些范围的每一个变量到值上的Map集。
●param 和 paramValues:用页访问传递的参数,与在JSP中一样
●header 和 headerValues:用页请求传递的头,与在JSP中一样
●cookie:Map映射cookie程序到特定的cookie对象上
EL 定义了全套与你在Java中非常熟悉的那些完全对应的操作符。算法操作符包括+、 -、 *、 / (或 div)、 和% (或 mod)。相关的操作符包括==、!=、<、>、<=、>=,它分别对应于eq、ne、lt、gt、le、和ge。我不想详细阐 述这些操作符,因为他们都能自我说明。
例子1:
使用JSP
<
html
>
< head >
< title > Count to 10 in JSP scriptlet </ title >
</ head >
< body >
<%
for(int i=1;i<=10;i++)
{ %>
<% = i %> < br />
<%
}
%>
</ body >
</ html >
< head >
< title > Count to 10 in JSP scriptlet </ title >
</ head >
< body >
<%
for(int i=1;i<=10;i++)
{ %>
<% = i %> < br />
<%
}
%>
</ body >
</ html >
使用JSTL
<%
@ taglib uri="http://java.sun.com/jstl/core" prefix="c"
%>
< html >
< head >
< title > Count to 10 Example (using JSTL) </ title >
</ head >
< body >
< c:forEach var ="i" begin ="1" end ="10" step ="1" >
< c:out value ="${i}" />
< br />
</ c:forEach >
</ body >
</ html >
< html >
< head >
< title > Count to 10 Example (using JSTL) </ title >
</ head >
< body >
< c:forEach var ="i" begin ="1" end ="10" step ="1" >
< c:out value ="${i}" />
< br />
</ c:forEach >
</ body >
</ html >