首先我们得知道什么是JSTL?
JSTL是干什么的?
为什么要使用JSTL?
我们可以带着以上三个问题来认识已经学习JSTL。
JSTL:
1):全称:Java Server Page Standard Tag Library——JSP标准标签库。
2): 主要用于在视图层,如:jsp页面。可以使用JSTL中的一系列程序简单快速的解决繁琐的jsp 代码。
3):在JSP页面上,使用JSP脚本片段进行分支、循环和数据显示,非常不便,在拼接脚本片段时,非常繁琐易错。
使用步骤:
①导入JSTL所需的JAR包
taglibs-standard-impl-1.2.1.jar
taglibs-standard-spec-1.2.1.jar
②在想使用JSTL的JSP页面上,使用taglib指令导入JSTL标签库的URI,在prefix属性中,指定这个标签库标签的前缀
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
③以<前缀:标签名>的形式使用标签。
★流程控制
分支
c:if
c:choos/c:when/c:otherwise
循环
c:forEach
c:forTokens
eg:
c:if:当c:if中test 的值成立时,就不会执行以下的c:if.即:多个c:if之间彼此没有关系。
<span style="font-size:14px;"><c:if test="${se.status==1}">
正常
</c:if>
<c:if test="${se.status==2}">
删除
</c:if></span>
c:choos/c:when/c:otherwise:多个c:when从上到下依次进行判断,如果test属性中指定的表达式为false则继续向下,
如果为true,则不执行后面的c:when 所有的c:when如果都不匹配,则执行c:otherwise
<span style="font-size:14px;"><c:choose>
<c:when test="${se.status==3}">
红色
</c:when>
<c:when test="${se.status==4}">
绿色
</c:when>
<c:otherwise>
黄色
</c:otherwise>
</c:choose></span>
c:forEach:一般是用于集合。主要是和EL 来配合使用,在这里可以嵌套JSTL 的其他标签。常用的属性有:items 、var 、varStatus。items的值为:集合对象。 var:为集合对象起一个别名。 varStatus:声明一个变量,在循环过程中,获取当前循环状态。
<span style="font-size:14px;"><c:forEach items="${monitor}" var="data" varStatus="status" >
<td>${status.index + 1}</td>
<td>${data.compName}</td>
<td>${data.compId}</td>
<td>${data.bizNum}</td>
<td>
<c:if test="${data.status==1}">
异常
</c:if>
<c:if test="${data.status==0}">
活跃
</c:if>
</td>
<td>${data.linkMan}</td>
<td>${data.linkPhone}</td>
<td>${data.reportDate}</td>
<td>${data.reportNum}</td>
</c:forEach></span>
jstl最常用的几种标签就这些的。其他标签就自己慢慢研究哈