今天做一个WEB小练习,再次用到了JSTL中的<c:forEach />迭代标签,菜鸟级别的我突然不确定怎么使用了,赶紧来复习一下。
JSTL(Java Page Standard Tag Library,JSP标准标签库),包含了在开发JSP时经常用到的一系列标准标签。这些标签提供了一种不用嵌套Java代码就可以实现复杂JSP开发的途径。
JSTL可以实现逻辑控制,从而进一步优化代码。
要在JSP中使用JSTL,必须要完成以下几项准备工作:
①下载JSTL所需的jstl.jar和standard.jar。
②将两个jar文件复制到WEB-INF\lib目录下,并添加到项目中。
③在JSP中添加标签指令,指令代码如下:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:forEach />迭代标签
JSTP提供了<c:forEach />迭代标签,该标签可以替换for循环语句,从而简化了页面中的代码,使结构更清晰,代码可读性更高。
<c:forEach />迭代标签的语法:
<c:forEach var="varName" items="items" varStatus="varStatus"> ...... </c:forEach>
在语法中:
var:集合中元素的名称
items:集合对象
varStatus:当前循环的状态信息,如循环的索引号。
例如:使用迭代标签优化图书列表显示
关键代码:
//在jsp页面添加核心标签库 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <% //调用方法,得到图书集合 List<Books> booksList = booksService.getBooksList(); request.setAttribute("list",booksList); %> <c:forEach var="book" items="${list}" varStatus="status"> <tr> <td>${book.name}</td> <td>${book.actor}</td> <td>${book.describe}</td> <td>${book.price}</td> <tr> </c:forEach>