JSTL
概念:JavaServer Pages Tag Library ( JSP标准标签库 )
用处:用于简化和替换 jsp页面 上的 java代码;JSTL 一般是和 EL 表达式混合使用的,EL从域中取数据,使用 JSTL 进行判断或者遍历。
注意:要想使用 JSTL ,得先导入两个jar包(javax.servlet.jsp.jstl.jar 和 jstl-impl.jar),然后再引入标签库:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
if标签
if 标签的 test 属性:
(1) 如果表达式为 true,则显示 if 标签体内容;如果为 false,则不显示标签体内容
(2)c:if 标签没有 else 情况,想要 else 情况,则可以再定义一个 c:if 标签
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>if标签</title>
</head>
<body>
<%
request.setAttribute("number",99);
%>
<c:if test="${number % 2 != 0}">
${number}为奇数
</c:if>
<c:if test="${number % 2 == 0}">
${number}为偶数
</c:if>
</body>
</html>
choose标签
<%
request.setAttribute("number",7);
%>
<c:choose>
<c:when test="${number == 1}">星期一</c:when>
<c:when test="${number == 2}">星期二</c:when>
<c:when test="${number == 3}">星期三</c:when>
<c:when test="${number == 4}">星期四</c:when>
<c:when test="${number == 5}">星期五</c:when>
<c:when test="${number == 6}">星期六</c:when>
<c:when test="${number == 7}">星期天</c:when>
<c:otherwise>数字输入有误</c:otherwise>
</c:choose>
foreach标签
foreach:相当于java代码的for语句
-
完成重复的操作,
for(int i = 1; i < 99; i ++)
属性:
begin:开始值
end:结束值
var:临时变量
step:步长
varStatus:循环状态对象
index:容器中元素的索引,从0开始
count:循环次数,从1开始
<c:forEach begin="1" end="10" var="i" step="2" varStatus="s">
${s.index}
-
遍历容器
List<User> list;
for(User user : list){ }
属性:
items:容器对象
var:容器中元素的临时变量
varStatus:循环状态对象
index:容器中元素的索引,从0开始
count:循环次数,从1开始<% List list = new ArrayList(); list.add("aaa"); list.add("bbb"); list.add("ccc"); request.setAttribute("list",list); %> <c:forEach items="${list}" var="str" varStatus="s"> ${s.index} ${s.count} ${str}<br> </c:forEach>