JSTL(JavaServer Pages Tag Library),JSP标准标签库,是由Apache组织提供的开源jsp标签,可以用来简化和替换jsp页面的java代码。
if:相当于java代码的if语句
有一个必须的属性:test,用来接收boolean表示式,如果表达式为true显示标签体内容,false不显示
一般test的属性值配合el表达式
<%
List list = new ArrayList();
list.add("aaa");
request.setAttribute("list",list);
request.setAttribute("number", 4);
%>
<c:if test="true">我是if,真</c:if>
<c:if test="${not empty list}">遍历集合</c:if>
<c:if test="${number mod 2 == 0}">${number}偶数</c:if>
<c:if test="${number mod 2 != 0}">${number}奇数</c:if>
choose:相当于java代码的switch语句
<%
request.setAttribute("number", 13);
%>
<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:相当于java代码的for循环语句
完成重复性的操作:
<c:forEach begin="1" end="10" var="i" step="1">
${i}
</c:forEach>
遍历容器:
属性:
<%
List<String> 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>
<%
// 创建一个list,并将该list加入request域
List list = new ArrayList();
list.add(new User("猪八戒", 556, new Date()));
list.add(new User("孙悟空", 36, new Date()));
list.add(new User("西海龙王", 6, new Date()));
list.add(new User("巨无霸", 536, new Date()));
list.add(new User("鲨鱼辣椒", 56, new Date()));
request.setAttribute("list", list);
%>
// 动态创建表格
<table border="1px" align="center">
<tr>
<th>编号</th>
<th>姓名</th>
<th>年龄</th>
<th>生日</th>
</tr>
<c:forEach items="${list}" var="user" varStatus="s">
<c:if test="${s.count % 2 == 0}">
<tr bgcolor="#ffc0cb">// 隔行颜色不一样
<td>${s.count}</td>// 依次取出属性
<td>${user.name}</td>
<td>${user.age}</td>
<td>${user.birthStr}</td>
</tr>
</c:if>
<c:if test="${s.count % 2 != 0}">
<tr bgcolor="#7fffd4">
<td>${s.count}</td>
<td>${user.name}</td>
<td>${user.age}</td>
<td>${user.birthStr}</td>
</tr>
</c:if>
</c:forEach>
</table>
原文:https://www.cnblogs.com/zhuobo/p/10806205.html