1.什么是jstl
JSTL(JavaServerPagesStandard Tag Library)JSP标准标签库
2.jstl的作用
使用JSTL实现JSP页面中逻辑处理。如判断、循环等。
3.使用jstl
1)在JSP页面添加taglib指令
<%@ taglib uri = "http://java.sun.com/jstl/core_rt" prefix = "c" %>
2)使用JSTL标签
<c:if test=""></c:if>
4.常用标签
1.通用标签:set out remove
2.条件标签:
3.迭代标签:foreach
普通循环
迭代器
foreach循环:
for(类型 变量名:数组或集合)
var:
<c:forEach var="i" begin="1" end="10" step="1">
<!-- 相当于:int i =1;i<=10;i++ -->
${i }
</c:forEach>
items:
<%
List list = new ArrayList();
list.add("aaa");
list.add("bbb");
list.add("ccc");
request.setAttribute("list", list);
%>
<c:forEach items="${list }" var="l">
${l }
</c:forEach>
varstatus:
<%
List list = new ArrayList();
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.add("eee");
list.add("fff");
request.setAttribute("list", list);
%>
<table border = "1">
<tr>
<th>数据</th>
<th>索引</th>
<th>计数</th>
<th>第一个</th>
<th>最后一个</th>
</tr>
<c:forEach items="${list }" var="l" varStatus="vs">
<tr>
<td>${l }</td>
<td>${vs.index }</td>
<td>${vs.count }</td>
<td>${vs.first }</td>
<td>${vs.last }</td>
</tr>
</c:forEach>
</table>
c:forEach中的varStatus属性。
指向一个字符串,该字符串引用一个对象。 map.put("vs",一个对象);
这个对象记录着当前遍历的元素的一些信息:
getIndex():返回索引。从0开始
getCount():返回计数。从1开始
isLast():是否是最后一个元素
isFirst():是否是第一个元素