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

jstl标签配置及使用

2011-07-07 14:34 267 查看
一. 配置 JSTL 包括两个 JAR 文件, jstl.jar 和 standard.jar 。 原文引入: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> 二. Core 标签库 Core 标签库主要包括了一般用途的标签、条件标签、迭代标签和 URL 相关的标签。在 JSP 页面使用 Core 标签,要使用 taglig 指令,指定引用的标签库,如下: <%@ taglib rui=”http://java.sun.com/jsp/jstl/core” prefix=”c” %> 一般用途的标签有 <c:out> 、 <c:set> 、 <c:remove> 、 <c:cath> 1.<c:out> 用于计算一个表达式并将结果输出。类似于 JSP 中 <%=%> 表达式,或者是 EL 中 $ ${el-expression} 。 2.<c:set> 用于设置范围变量的值或者 javabean 对象的属性。 看个实际例子: <c:set var=”username” value=”lisi” scope=”session”/> 这样就相当于设置了 session 。 3.<c:remove> 相对 <c:set> 其作用是移除范围变量。比如: <c:remove var=”nusername” scope=”session”/> 4.<c:catch> 用于捕获在其中嵌套的操作所抛出的异常对象,并将异常信息保存到变量中。 我们将有可能抛出异常的代码放置到开始标签 :<c:catch> 和结束标签 :</c:catch> 之间。如果其中代码出现异常,异常对象将被捕获,保存在 var 声明的变量中,该变量总是有 page 范围。如果没有发生异常,而 var 所标识的范围变量将被移除。 如果没有指定 var 属性,异常只是简单的被捕获,异常信息并不会被保存。 Eg : <c:catch var=”exception”> <% int i = 5; int j = 0; int k=i/j; %> </c:catch> <c:out value=”${exception}” /><br> <c:out value=”${exception.massage}”/> 后一句相当于: exception.getMessage() 条件标签包括 <c:if><c:choose><c:when><c:otherwise> 1.<c:if> 用于实现 java 中的 if 语句功能。 <c:if test=”${user.visitCount==1}”> This is your first visit . </c:if> 若为 true ,会打印中间部分。也可以声明 var ,方便下一步判断。 <c:if test=”${param.name==’admin’}” value=”result”/> <c:out value=”${result}” /> 2.<c:choose> <c:choose> 和 <c:when> 、 <c:otherwise> 一起实现互斥条件执行,类似于 java 中的 if else. <c:choose> 一般作为 <c:when> 、 <c:otherwise> 的父标签。 eg : <c:choose> <c:when test="${row.v_money<10000}"> 初学下海 </c:when> <c:when test="${row.v_money>=10000&&row.v_money<20000}"> 身手小试 </c:when> <c:otherwise> 商业能手 </c:otherwise> </c:choose> 迭代标签 迭代标签有 <c:forEach> 和 </c:forEach> // 遍历记录集 <c:forEach items="${finalResult.rows}" var="row"> <tr class="<%=tdClass[(rank+1)%2]%>"> <td align="center"><span><%=rank%> </span></td> <td align="center"><span ><c:out value="${row.player_name}"/></span> </td> <td align="center"><span > ¥ <c:out value="${row.money}"/></span></td> </tr> <%rank++;%> </c:forEach> 也可以设定固定次数。 <c:forEach var =”i” begin=”100 “ end= “110”> ${i} </c:forEach> 如果再加个 step= “ 2 ”那么每次增长为 2 。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: