2024年4月19日发(作者:)

JSTL

什么是JSTL

JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个不断完善的开放源代码的

JSP标签库,是由apache的jakarta小组来维护的。JSTL1.1必须在Servlet2.4和JSP2.0以上

的容器才能正常工作。

为了抑制JSP里写大量的JAVA代码,所以用JSTL标签来实现JAVA里逻辑调用,JSP 标

准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的

通用功能的定制标记库集,这些功能包括迭代和条件判断、数据管理格式化、XML 操

作以及数据库访问。

JSTL包括五个标签库,即Core标签库、XML标签库、国际化与格式化标签库和SQL标

签库,

JSTl的使用

一. 配置 JSTL

两个 JAR 文件, 和 。

原文引入:

<%@ taglib prefix="c" uri="/jsp/jstl/core" %>

<%@ taglib prefix="sql" uri=" /jsp /jstl/sql" %>

<%@ taglib prefix="fmt" uri=" /jsp /jstl/fmt" %>

二. Core 标签库 (经常用)

Core 标签库主要包括了一般用途的标签、条件标签、迭代标签和 URL 相关的标签。在

JSP 页面使用 Core 标签,要使用 taglig 指令,指定引用的标签库,如下:

<%@ taglib uri=”/jsp/jstl/core” prefix=”c” %>

一般用途的标签有

1.

用于计算一个表达式并将结果输出。类似于 JSP 中 <%=%> 表达式,或者是 EL 中

$ ${el-expression} 。

但它有比较好用的default(如果返回的值为NULL),

escapeXml(true/false)属性。

value="${hello}"/>

2.

用于设置范围变量的值或者 javabean 对象的属性。

看个实际例子:

可以声明变量并给它赋值,如:

temp:${temp }

也可以设置一个对象的属性,如:

这样就相当于设置了 session 。

3.

相对 其作用是移除范围变量。比如:

4.

用于捕获在其中嵌套的操作所抛出的异常对象,并将异常信息保存到变量中。

我们将有可能抛出异常的代码放置到开始标签 : 和结束标签 :

之间。如果其中代码出现异常,异常对象将被捕获,保存在 var 声明的变量中,该变量总

是有 page 范围。如果没有发生异常,而 var 所标识的范围变量将被移除。

如果没有指定 var 属性,异常只是简单的被捕获,异常信息并不会被保存。

Eg :

<%

int i = 5;

int j = 0;

int k=i/j;

%>

后一句相当于: sage()

条件标签包括

1.

用于实现 java 中的 if 语句功能。

This is your first visit .

若为 true ,会打印中间部分。也可以声明 var ,方便下一步判断。

2.

一起实现互斥条件执行,类似于 java

中的 if else.