JSTL标签使用规范

 

在应用中要使用JSTL标签库以及它的表达式语言只需如下几步即可:
1.  将jstl.jar和standard.jar包含到应用程序中(WEB-INF/lib目录下);
2.  修改web.xml,在其中加入如下片段:

显示代码打印
1     <taglib>  

2         <taglib-uri>core</taglib-uri>  

3         <taglib-location>/WEB-INF/c-rt.tld</taglib-location>  

4     </taglib>  

5     <taglib>  

6         <taglib-uri>fmt</taglib-uri>  

7         <taglib-location>/WEB-INF/fmt-rt.tld</taglib-location>  

8 </taglib>

OK,现在我们就可以使用JSTL标签以及表达式了。尽管这两部非常简单,但是还是
花了我一点时间,下面是几点要注意的地方:
1.  JSTL是基于JSP技术的,因此我们Web服务器必须是一个JSP容器
2.  关于web.xml,它的头必须是这样的:

显示代码打印
1    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" 

2     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

3     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee     

4     http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"  

5 version="2.4">

之前我的web.xml是eclipse自动生成的,头如下所示:

显示代码打印
1 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD   

2 Web Application 2.3//EN" "web-app_2_4.dtd" >  

3 <web-app>

这样的直接后果就是页面上不支持JSTL表达式,比方说我有一个${3+7},正常情况下它应该显示为10,结果它直接显示为${3+7},为什么会这样呢?因为只有Servlet2.4才支持这种表达式的写法,所有web.xml的头必须修改。
3.standard.jar包必须要包含,实际上我们在页面中使用标签依靠的都是这个包,我们可以打开c.tld文件,随便找一段话看看,如下所示:

显示代码打印
01 <tag>  

02     <description>  

03        Simple conditional tag that establishes a context for  

04        mutually exclusive conditional operations, marked by  

05        &lt;when&gt; and &lt;otherwise&gt;  

06     </description>  

07     <name>choose</name>  

08     <tag-class>org.apache.taglibs.standard.tag.common.core.ChooseTag</tag-class>  

09     <body-content>JSP</body-content>  

10 </tag>

这说明<c:choose>标签依赖于org.apache.taglibs.standard.tag.common.core.ChooseTag类,而这个类就包含在standard.jar中。
4.在jsp中使用jstl标签需要使用taglib指令,如下所示:

显示代码打印
1 <%@ taglib prefix="c" uri="core" %>

文章出处:飞诺网(www.diybl.com):http://www.diybl.com/course/1_web/javascript/jsjs/2007923/73267.html

你可能感兴趣的:(eclipse,jsp,servlet,application,语言,web服务)