JSTL

概述

 JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。jstl出现的目的同el一样也是要提到jsp页面中的脚本代码。JSTL标准标准标签库有5个子库,但随着发展,目前常使用的是他的核心库。
  标签库    URL        前缀

  1. Core http://java.sun.com/jsp/jstl/core c
  2. I18N http://java.sun.com/jsp/jstl/fmt fmt
  3. SQL http://java.sun.com/jsp/jstl/sql sql
  4. XML http://java.sun.com/jsp/jstl/xml x
  5. Functions http://java.sun.com/jsp/jstl/functions fn

下载以及导入

 从Apache的网站下载JSTL的JAR包。进入 “http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/” 网址下载JSTL的安装包。jakarta-taglibs-standard-1.1.2.zip,然后将下载好的JSTL安装包 进行解压,此时,在lib目录下可以看到两个JAR文件,分别为jstl.jar和standard.jar。 其中,jstl.jar文件包含JSTL规范中定义的接口和相关类,standard.jar文件包含用于 实现JSTL的.class文件以及JSTL中5个标签库描述符文件(TLD),将两个jar包导入我们工程的lib中

if标签

 if判断中没有else,所有我们可以使用!来实现同样的效果

1
2
3
4
5
6
7
<!-- JSTL if判断 -->
<c:if test="${str1==1111111111 }">
11111
</c:if>
<c:if test="${str1!=2222222222 }">
22222
</c:if>

for标签

使用方式1

1
2
3
4
5
6
7
8
9
10
11
12
13
<!-- JSTL for循环1 -->
<%
int s=10;
int s2=0;
String[] str = {"---","+++"};
request.setAttribute("s", s);
request.setAttribute("s2", s2);
request.setAttribute("str", str);

%>
<c:forEach begin="${s2 }" end="${s }" var="a">
${a }
</c:forEach>

使用方式2

1
2
3
4
<!-- JSTL for循环2 -->
<c:forEach var="item" items="${str }">
${item }
</c:forEach>

完整代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<!-- JSTL if判断 -->
request.setAttribute("str1", "1111111111");
<c:if test="${str1==1111111111 }">
11111
</c:if>
<c:if test="${str1!=2222222222 }">
22222
</c:if>

<!-- JSTL for循环1 -->
<%
int s=10;
int s2=0;
String[] str = {"---","+++"};
request.setAttribute("s", s);
request.setAttribute("s2", s2);
request.setAttribute("str", str);

%>
<c:forEach begin="${s2 }" end="${s }" var="a">
${a }
</c:forEach>
<!-- JSTL for循环2 -->
<c:forEach var="item" items="${str }">
${item }
</c:forEach>