1 JSTL
1.1 JSTL概述
1)简介
JSTL的全称是:JSP Standard Tag Libary。它是JSP中标准的标签库。它是由Apache实现的。
它由以下5个部分组成:
| 组成 | 作用 | 说明 |
|---|---|---|
| Core | 核心标签库。 | 通用逻辑处理 |
| Fmt | 国际化有关。 | 需要不同地域显示不同语言时使用 |
| Functions | EL函数 | EL表达式可以使用的方法 |
| SQL | 操作数据库。 | 不用 |
| XML | 操作XML。 | 不用 |
2)使用要求
要想使用JSTL标签库,在javaweb工程中需要导入坐标。首先是在工程的WEB-INF目录中创建一个lib目录,接下来把jstl的jar拷贝到lib目录中,最后在jar包上点击右键,然后选择【Add as Libary】添加。如下图所示:

1.2 核心标签库
在我们实际开发中,用到的jstl标签库主要以核心标签库为准,偶尔会用到国际化标签库的标签。下表中把我们经常可能用到的标签列在此处,其余标签库请参考【JSTL标签库.doc】文档。
| 标签名称 | 功能分类 | 分类 | 作用 |
|---|---|---|---|
<c:if> | 流程控制 | 核心标签库 | 用于判断 |
<c:choose> ,<c:when>,<c:otherwise> | 流程控制 | 核心标签库 | 用于多个条件判断 |
<c:foreache> | 迭代操作 | 核心标签库 | 用于循环遍历 |
1.3 JSTL使用
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%--导入jstl标签库 --%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>JSTL的常用标签</title></head><body><%-- c:if c:choose c:when c:otherwise --%><% pageContext.setAttribute("score","F"); %><c:if test="${pageScope.score eq 'A' }">优秀</c:if><c:if test="${pageScope.score eq 'C' }">一般</c:if><hr/><c:choose><c:when test="${pageScope.score eq 'A' }">AAA</c:when><c:when test="${pageScope.score eq 'B' }">BBB</c:when><c:when test="${pageScope.score eq 'C' }">CCC</c:when><c:when test="${pageScope.score eq 'D' }">DDD</c:when><c:otherwise>其他</c:otherwise></c:choose><%-- c:forEach 它是用来遍历集合的属性:items:要遍历的集合,它可以是EL表达式取出来的var:把当前遍历的元素放入指定的page域中。 var的取值就是key,当前遍历的元素就是value注意:它不能支持EL表达式,只能是字符串常量begin:开始遍历的索引end:结束遍历的索引step:步长。i+=stepvarStatus:它是一个计数器对象。里面有两个属性,一个是用于记录索引。一个是用于计数。索引是从0开始。计数是从1开始--%><hr/><% List<String> list = new ArrayList<String>();list.add("AAA");list.add("BBB");list.add("CCC");list.add("DDD");list.add("EEE");list.add("FFF");list.add("GGG");list.add("HHH");list.add("III");list.add("JJJ");list.add("KKK");list.add("LLL");pageContext.setAttribute("list",list);%><c:forEach items="${list}" var="s" begin="1" end="7" step="2">${s}<br/></c:forEach><hr/><c:forEach begin="1" end="9" var="num"><a href="#">${num}</a></c:forEach><hr/><table><tr><td>索引</td><td>序号</td><td>信息</td></tr><c:forEach items="${list}" var="s" varStatus="vs"><tr><td>${vs.index}</td><td>${vs.count}</td><td>${s}</td></tr></c:forEach></table></body>
</html>






![出现504怎么办?由于服务器更新导致的博客报504错误[详细记录]](https://img-blog.csdnimg.cn/5f89ade4ae604d9083fedac37d1d3155.png)








