JSTL不同版本和EL表达式的关联

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSTL不同版本和EL表达式的关联相关的知识,希望对你有一定的参考价值。

JSTL目前有3个版本:JSTL1.0、JSTL1.1、JSTL1.2

JSTL1.0和JSTL1.1包含jstl.jar和standard.jar这2个jar包,在j2ee4的版本中是需要单独引用这2个jar包的。

JSTL1.2在J2EE5里的jar包是jstl-1.2.jar,在J2EE6里是jstl-imp.jar。

 

各版本差异:

JSTL1.0(不支持EL)、JSTL 1.1和JSTL 1.2支持的servlet和jsp规范也不同:

web.xml中要申明相应的servlet版本:

JSTL1.2需要servlet2.5

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
version="2.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
JSTL1.1和JSP2.0需要servlet2.4

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4 .xsd">
JSTL1.0和JSP1.2需要servlet2.3

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.3 " xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_3 .xsd">
JSP中taglib的引用方式:

复制代码
JSTL1.0的使用方法为:
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>

JSTL1.1的使用方法为:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

JSTL1.2的使用方法为
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
复制代码
EL表达式的支持:

默认开启支持EL表达式支持有:

1、servlet2.4

2、J2EE6

 

默认不支持EL表达式需要进行如下2种配置中的其一来开启EL:

1、在JSP中加入:

<%@ page isELIgnored="false"%>
2、在web.xm中加入:

<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<el-ignored>false</el-ignored>
</jsp-property-group>
</jsp-config>

最终的结论:如果是新项目建议使用J2EE6,因为新项目不可能还使用servlet2.4。

以上是关于JSTL不同版本和EL表达式的关联的主要内容,如果未能解决你的问题,请参考以下文章

JSTL和EL

jsp+el+jstl

JSTL

动态页面技术(JSP/EL/JSTL)

JSTL&EL

jsp&el&jstl