一、什么是JSTL
JSTL(Java server pages standarded tag library,即JSP标准标签库)是由JCP(Java community Proces)所制定的标准规范,它主要提供给Java Web开发人员一个标准通用的标签库。开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可读性,降低程序的维护难度。
二、标签库分类
标签库 | URI | 前缀 |
---|---|---|
Core | http://java.sun.com/jsp/jstl/core | c |
XML Processing | http://java.sun.com/jsp/jstl/xml | x |
I18N formatting | http://java.sun.com/jsp/jstl/fmt | fmt |
Database access | http://java.sun.com/jsp/jstl/sql | sql |
Functions | http://java.sun.com/jsp/jstl/functions | fn |
三、标签库的使用
1)、引入jar包:
下载地址
2)、
导入标签库:
不同的标签库对应不同的uri。
四、标签库的简单使用
以下以Core标签库为例:
1)、if语句:
<c:if test="${5<3}">
满足条件
</c:if>
注:JSTL中没有else。
2)、switch语句:
<c:set var="num" value="8"></c:set>
<c:choose>
<c:when test="${num==1}">满足num==1时执行</c:when>
<c:when test="${num==5}">满足num==5时执行</c:when>
<c:when test="${num==8}">满足num==8时执行</c:when>
<c:otherwise>不满足上述时执行</c:otherwise>
</c:choose>
3)、for循环
for(int i=0;i<10;i++){
System.out.println(i);
}
等价于:
<c:forEach var="i" begin="0" end="10" step="1">
${i}<br>
</c:forEach>
<%
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
for(String str:list){
System.out.println(str);
}
%>
等价于:
<c:forEach items="${list}" >
${str}<br>
</c:forEach>
在循环中可以加上:
<c:forEach items="${list}" varStatus="status" >
${str}:${status.index}/${status.count}/${status.first}/${status.last}<br>
</c:forEach>
status代表一种状态:
index代表下标(从0开始),返回下标(int型)
count代表第几次(从1开始),返回第几次(int型)
first代表是否为第一次:返回布尔值
last代表是否是最后一次:返回布尔值