JSTL 库安装使用(jstl 1.1系列和jstl 1.2系列)

JSTL 库安装使用(jstl 1.1系列和jstl 1.2系列)

JSTL全名为JavaServer Pages Standard Tag Library,目前最新的版本为 1.2.5 版。JSTL是由JCP(Java Community Process)所制定的标准规范,它主要提供给Java Web开发人员一个标准通用的标签函数库。Web程序员能够利用JSTL和EL来开发Web程序,取代传统直接在页面上嵌入Java程序(Scripting)的做法,以提高程序的阅读性、维护性和方便性。

jstl1.1系列(以1.1.2为列)

Tomcat安装JSTL 库步骤如下:

从Apache的标准标签库中下载的二进包(jakarta-taglibs-standard-current.zip)。

官方下载地址:http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/本站下载地址:jakarta-taglibs-standard-1.1.2.zipmvnrepository下载地址:https://mvnrepository.com/artifact/javax.servlet/jstlJava2s下载地址:http://www.java2s.com/Code/Jar/j/Downloadjstljar.htm

下载 jakarta-taglibs-standard-1.1.2.zip 包并解压,将 jakarta-taglibs-standard-1.1.2/lib/ 下的两个 jar 文件:standard.jar 和 jstl.jar 文件拷贝到 /WEB-INF/lib/ 下,或者通过软件(例:intellij idea)导入,导入方式如下。

点击顺序:File--->Project Structure--->Module--->Dependencies--->+

将 tld 下的需要引入的 tld 文件复制到 WEB-INF 目录下,如下所示,然后就可以开始使用。

使用方式一:

在图中所示位置添加

<%@ taglib uri="WEB-INF/c.tld" prefix="c"%>,即可以使用标签,其余tld文件同理。

使用方式二:

首先在 web.xml 文件中添加以下配置:

http://java.sun.com/jsp/jstl/fmt

/WEB-INF/fmt.tld

http://java.sun.com/jsp/jstl/fmt-rt

/WEB-INF/fmt-rt.tld

http://java.sun.com/jsp/jstl/core

/WEB-INF/c.tld

http://java.sun.com/jsp/jstl/core-rt

/WEB-INF/c-rt.tld

http://java.sun.com/jsp/jstl/sql

/WEB-INF/sql.tld

http://java.sun.com/jsp/jstl/sql-rt

/WEB-INF/sql-rt.tld

http://java.sun.com/jsp/jstl/x

/WEB-INF/x.tld

http://java.sun.com/jsp/jstl/x-rt

/WEB-INF/x-rt.tld

然后在每个 JSP 文件中的头部包含标签,如引用核心标签库的语法如下,其余同理。

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

jstl1.2系列(以1.2.5为列)

JSTL 1.2.5 必须在支持 Servlet 2.5, JavaServer Pages 2.1 以上版本的JavaWeb容器才可使用。和jstl1.1系列一样,首先在 WEB-INF/lib 下加入如下jar包或者通过工具直接导入(1.1系列已讲):

taglibs-standard-compat-1.2.5.jar

taglibs-standard-impl-1.2.5.jar

taglibs-standard-jstlel-1.2.5.jar

taglibs-standard-spec-1.2.5.jar

在这里如果涉及到XML标记库依赖项的话,需要Apache Xalan 2.7.1或更高版本。

Apache Xalan 2.7.1

同时为解决XSLT处理的性能问题,此版本依赖于Apache Xalan实现特定的功能。下列库应该包含在应用程序的类路径中:

xalan-2.7.1.jar

serializer-2.7.1.jar

但是如果你不使用JSTL 1.0标签,那么“taglibs-standard-jstlel”JAR可以省略。如果您不使用XML库,那么Apache Xalan依赖项也可以省略;如果使用Maven构建应用程序,请将以下依赖项添加到你的pom.xml文件:

org.apache.taglibs

taglibs-standard-spec

1.2.5

org.apache.taglibs

taglibs-standard-impl

1.2.5

最后在开发的jsp页面中选择如下所需的标签即可。

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="xml"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>

遇到的问题及解决办法:

问题一:<%@ taglib uri="http://java.sun.com/jsp/jstl/core"prefix="c"%>报错。

用eclipse,myeclipse,intellij idea等开发工具写jsp时如下代码报错

<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c”%>

<%@ taglib uri=“http://java.sun.com/jsp/jstl/sql” prefix=“sql”%>

解决办法:缺少包,如下:

jstl 1.0系列为jstl.jar和 standard.jar; 1.2系列为taglibs-standard-impl-1.2.5.jar,taglibs-standard-spec-1.2.5.jar

可以通过tomcat\webapps\examples\WEB-INF\lib目录下找到两个jar包, 然后把这两个包复制粘贴到tomcat的lib目录下或项目的lib目录下即可。

问题二:org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jstl/core cannot be resolved,此问题发生前使用了JSTL 1.2 。

解决办法:该URI适用于JSTL 1.0,但您实际上使用的是JSTL 1.2,它使用带有附加/ jsp路径的URI(因为发明EL表达式的JSTL自从1.1版本集成为JSP的一部分以便共享或重用EL)普通JSP中的逻辑也是如此。因此,请相应地修复taglib的URI为:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

如果使用maven依赖的话,对应的修改POM为:

javax.servlet

jstl

1.2

相关推荐

世界杯下的彩票站:突击一个月,赚回两年房租 彩票站,是幸运的“中转站”。文丨邹帅编辑丨唐亚华来源丨深燃(ID:shenrancaijing)世界杯来了,彩票... 体育平台送365彩金
足球比分 365体育旧版本怎么下载

足球比分

09-06 👁️ 8675
单机建设发展类游戏有哪些?这几款让你过足瘾! 体育平台送365彩金