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>

  

posted @ 2020-03-04 15:15  Scorpicat  阅读(144)  评论(0编辑  收藏  举报