标准标记库JSTL
需要两个JAR文件。第一个文件是jstl.jar,它为JSTL标记库提供API类。第二个文件是standard.jar,它提供了标记库的实现类 。复制到WEB-INF目录下的lib子目录下。
通过<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c” %>引入到JSP
JSTL通用标记
使不使用JSP脚本执行Java程序成为可能
<c:catch var="e">
会抛出异常的代码
</c:catch>
<c:out value="${number}" />
支持变量
<c:set var="num" value="${4*4}" />
<c:set var="num">
${8*2}
</c:set>
<c:set var="num">
<c:out value="${8+8}" />
</c:set>
设置对象属性
<c:set target="customer1" property="zipcode">
55501
</c:set>
或者
<c:set target="customer1" property="zipcode" value="55501">
JSTL流程控制
JSTL条件处理
<c:if test="${x == '9'}">
${x}
</c:if>
----------------------------
<c:choose>
<c:when test="${color == 'white'}">
Light!
</c:when>
<c:when test="${color == 'black'}">
Dark!
</c:when>
<c:otherwise>
Colors!
</c:otherwise>
</c:choose>
循环
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html><body>
<c:forEach var="x" begin="0" end="30" step="3">
${x}
</c:forEach>
</body></html>
------------------------
循环赋值
<c:forEach var="num" items="${numArray}">
<c:set var="num" value="100" />
</c:forEach>
-----------------------------
<c:forTokens>标记用于循环处理字符串中由分隔符分隔的各成员。其语法形式为:
<c:forTokens items=".." delims=".."
[var=".."] [varStatus=".."] [begin=".."] [end=".."] [step=".."]>
内容体
</c:forTokens>
用JSTL访问URL信息
< c:url > 用于URL重写
<c:url value="/page.html" var="pagename"/>
<c:url value="/page.html" var="pagename">
<c:param name="param1" value="${2*2}"/>
<c:param name="param2" value="${3*3}"/>
</c:url>
< c:import>用于访问Servlet容器外的内容
<c:import url="/content.html" var="newstuff" scope="session">
<c:param name="par1" value="val1"/>
<c:param name="par2" value="val2"/>
</c:import>
< c:redirect> 与sendRedirect()方法相同