您的位置:首页 > Web前端 > JavaScript

jsp---JSTL标签详解

2008-12-12 10:45 260 查看
什么是JSTL ?
JSP Standard Tag Library,JSTL主要是为了在JSP内部与EL紧密联系,使用JSTL就不必在jsp内部再潜入繁多的Java代码。

JSTL功能介绍
为了抑制JSP里写大量的JAVA代码,所以用JSTL标签来实现JAVA里逻辑调用.
JSTL为条件处理,迭代,国际化,数据库访问和可扩展标记语言XML处理提供支持.极大地简化了对JSP中应用数据的访问和操作.JSTL包括四个自定义标记库.常用标签库,XML,国际化和数据库标签.

JSTL标签库  
JSTL通常被认为是一种单标签库。但JSTL实际上有4个标签库。这些标签库被概括为如下:  
1.核心标签库
包含一些Web应用的必要的标签。核心标签库的实例包括循环,表达式赋值和基本输入输出。.  

2.格式化/国际化标签库
包括被用来解析数据的标签库。这种标签会解析数据,比如日期,不同的场所区域等。  

3.数据库标签库—包含被用来访问SQL数据库的标签。这些标签通常仅仅只创建原形(prototype)程序。这个是因为大多数程序不会直接从JSP页面中来处理数据库访问。数据库访问应该被嵌入到能够被JSP页面所访问的EJB中。  

4.XML标签库
包含被用来访问XML元素的标签。因为XML广泛使用于Web开发,XML的处理是JSTL的一个重要的特征。

JSTL常用标签
<c:out>标签用于在JSP中显示数据
例:<c:out value=“${user.userName}”/>

<c:set>标签用于保存数据
例:<c:set target="${user.userName}" property=“userName" value="${user}"/>  
将对象user.userName的userName属性值保存到变量user中

<c:remove>标签用于删除数据
例:<c:remove var=“userName” scope=“session”/>
从session中删除userName.

JSTL条件标签
<c:if>是流控制标签
例:<c:if test=“${userName}” >
Welcome !
</c:if>

JSTL条件标签
<c:choose>这个标签不接受任何属性
<c:when>
<c:otherwise>
由于JSTL没有if (){…} else {…}的条件语句,所以这种形式的语句只能用<c:choose>、<c:when>和<c:otherwise>标签共同来完成了。
例:
<c:choose>
<c:when test=“${user.userName}”>aaa
</c:when>
<c:when test=“${}”>kkk
</c:when>
<c:otherwise>ddd
</c:otherwise>
</c:choose>

JSTL循环控制标签
<c:forEach>标签提供了一个对元素集合进行迭代的简单方法,如果只要迭代集合中的部分元素,分别指定开始和结束值
例:
<c:forEach var=“userName” items=“${user}”>
<c:out value=“${userName}”/>
</c:forEach>

JSTL URL标签
<c:param>用来传递参数给一个重定向或包含页面
例:<c:redirect url=“http://www.leeeee……” >
<c:param name=“” value=“”/>
</c:redirect>

<c:import>导入一个url的资源,也可以把参数传递到被导入的页面。
例:<c:import url="http://hi.baidu.com/heaven_feather"/>
<c:url>输出一个url地址.
例:<a href=“<c:url url=“wap.muzhizu.cn”/>”/>
<c:redirect>将请求地址重定向到另一个页面
例:<c:redirect url="http://hi.baidu.com/heaven_feather"/>

JSTL国际化输出标签
<fmt:timeZone>操作的作用域仅限于其标记体内容。在 <fmt:timeZone> 标记体中,由标记的 value 属性指定的时区覆盖了 JSP 环境中现有的任何其它时区设置。

SQL标签
<sql:query>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息