JSTL (JavaServerPages Standard Tag Library)JSP标准标签库
JSTL的作用:实现JSP页面中逻辑判断。如判断,循环的等。
- 使用JSTL
- 添加taglib指令(JavaEE4.0以上不需要添加)
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- 核心库标签
- 通用标签:set、out、remove
<%--声明并显示一个变量--%> <c:set var="num" value="10"/> <c:out value="${num}"/> <%--声明一个session--%> <c:set var="num" value="100" scope="session"/> <c:out value="${num}"/> <c:remove var="num" scope="session"/> <c:out value="${num}" default="aaa"/>
- 条件标签:if、choose
<%--if标签--%> <c:if test="${num > 1}"> bbb </c:if> <%--choose标签--%> <c:set var="num" value="${4}"/> <c:choose> <c:when test="${num == 1}">a</c:when> <c:when test="${num == 2}">b</c:when> <c:when test="${num == 3}">c</c:when> <c:otherwise>d</c:otherwise> </c:choose>
- 循环、迭代
forEach标签中的varStatus属性。<%--for循环--%> <c:forEach var="i" begin="1" end="10" step="2"> ${i} </c:forEach> <%--增强for循环--%> <% List list = new ArrayList(); list.add("aaa"); list.add("bbb"); list.add("ccc"); request.setAttribute("list", list); %> <c:forEach items="${list}" var="v"> ${v} </c:forEach>
指向一个字符串,该字符串引用一个对象。map.put(“vs”,一个对象);
这个对象记录着当前遍历的元素的一些信息:
getIndex():返回索引。从0开始
getCount():返回计数。从1开始
isLast():是否是最后一个元素
isFirst():是否是第一个元素