26 JSTL引入
依赖包
或使用maven坐标
<dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency>
引入语句
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
prefix代表别名
使用简略
if的使用
<c:if test=""> 标签体 </c:if>
choose的使用
<c:choose> <c:when test=""> </c:when> <c:otherwise> </c:otherwise> </c:choose> 用法: when可以出现1次或者多次,相当于一个if语句,当test属性值为true时,执行标签体的内容。 otherwise可以出现0次或者1次,相当于最后那个else语句。
foreach的使用
<c:forEach items="" var="" varStatus=""> </c:forEach> 用法: items属性用于指定要遍历的集合或者数组,可以使用EL表达式来赋值。 var属性用于指定一个绑订名。 注:该标签每次从items属性所指定的集合或者数组中取一个元素,然后将其绑订到pageContext上,绑订名由var属性来指定。 varStatus属性用于指定一个绑订名。 注:该标签会创建一个特殊的对象,并且将该对象绑订到了pageCOntext上。这个特殊对象提供了一些用于获得当前遍历状态的方法: getIndex():获得当前正在被遍历的元素的下标(从0开始)。 getCount():获得遍历的次数(即正在取第几个元素,从1开始)。
使用示例
写入:
req.setAttribute("list", list); req.getRequestDispatcher("/index.jsp").forward(req, resp);
读取:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN " "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta charset="UTF-8"> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Insert title here</title> </head> <body> <table> <tr> <th>编号</th> <th>姓名</th> <th>年龄</th> </tr>
<!-- 读取 --> <c:forEach items="${list}" var ="peo"> <tr> <td>${peo.id }</td> <td>${peo.name }</td> <td>${peo.age }</td> </tr> </c:forEach> </table> </body> </html>