概念
JSTL全称:JavaServerPages Standard Tag Library
JSP标准标签库
用于实现JSP页面中逻辑处理,如判断,循环等。
标签库分类
Core标签库
URL:http://java.sun.com/jsp/jstl/core
前缀:c
XML processing标签库
URL:http://java.sun.com/jsp/jstl/xml
前缀:x
I18N formatting标签库
URL:http://java.sun.com/jsp/jstl/fmt
前缀:fmt
Database access标签库
URL:http://java.sun.com/jsp/jstl/sql
前缀:sql
Function标签库
URL:http://java.sun.com/jsp/jstl/functions
前缀:fn
自定义标签库
标签库的使用
下载地址
http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/
1.使用流程
- 导入Jar包
- 将下载的文件解压,把lib里的包放到项目中的WEB-INF的lib里
右键WEB-INF的lib 下的jar包–>Build Path–>Add to Build Path
在JSP表头写`
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>`
- prefix="c"内容就是前缀
2.语句的使用
Core
变量定义num=8:
<c:set var="num" value="8"></c:set>
条件判断
- if语句
<c:if test="${5>3}">
//满足条件
</c:if>
- 判断是否为空
<c:if test="${empty num}">
//为空满足条件
</c:if>
- switch语句
<c:choose>
<c:when test="${num == 1}">1</c:when>
<c:when test="${num == 2}">2</c:when>
<c:when test="${num == 3}">3</c:when>
<c:when test="${num == 8}">8</c:when>
<c:otherwise>num</c:otherwise>
</c:choose>
- 循环(for(int i=0;i<?;i++))
ver=“i”就是int i,begin=“0”就是从0开始,end=“10”就是10结束,step=“1”每次累加1
<c:forEach var="i" begin="0" end="10" step="1">
${i }<br>
</c:forEach>
- 循环for(String a:list)
items=“${list}”相当于是list;var=“str”相当于String a
其中varStatus=“status”的用法:
${status.index }
表示当前内容的下标
${status.count }
表示循环计数器
s t a t u s . f i r s t 表 示 是 否 是 第 一 个 , 返 回 布 尔 值 / {status.first } 表示是否是第一个,返回布尔值 / status.first表示是否是第一个,返回布尔值/{status.last }
表示是否是第最后一个,返回布尔值
<c:forEach items="${list }" var="str" varStatus="status">
${str }:${status.index }/${status.count }/${status.first }/${status.last }<br>
</c:forEach>
- formatting格式化
数字格式化(让value里的值显示小数点后3位)
<fmt: formatNumber value="12.8897541" pattern="".000></fmt:formatNumber>