`
阅读更多
JSTL简介:
标准标签库JSTL的全名为:Java Server Pages Standard Tag Library

JSTL主要提供了5大类标签库
  • 核心标签库:为日常任务提供通用支持,如显示和设置变量,重复使用一组项目,测试条件以及其他操作
  • 国际化(I18N)标签库:支持多种语言的引用程序
  • SQL标签库:对访问和修改数据库提供标准化支持
  • XML标签库:对XML文件处理和操作提供支持
  • 函数标签库:通过在EL表达式中调用函数标签库中的函数来实现特定的操作


标签库URI惯用前缀使用模式其他
核心标签库http://java.sun.com/jstl/corec<c:tagname…>
国际化标签http://java.sun.com/jstl/fmtfmt<fmt:tagname…>
SQL标签库http://java.sun.com/jstl/sqlsql<sql:tagname…>不常用
XML标签库http://java.sun.com/jstl/xmlx<x:tagname…>不常用
函数标签库http://java.sun.com/jstl/functionsfn<fn:tagname…>不常用


核心标签库
包括:out , set , remove , catch , if , choose , when 和 url 等

--------------------------------------------------------------------------------------------------------
out标签
它可以在页面中显示一个字符串或者一个EL表达式的值。类似于<%= ... %>
<c:out value="object" [escapeXml="true|false"] />

<c:out value="object" [escapeXml="true|false"] >defalut value</c:out>
如果object为null的话,将显示默认值。
各属性的说明如下
  • value:可以指定一个字符串作为输出内容,也可以指定为EL表达式,例如:${3+5}.
  • escapeXml:类型为boolean , 确定 , < , > , & , ‘ , " 等字符在结构的字符串中是否被转换成字符串实体代码,默认值是true
  • default value:可以是字符串,也可以是一个EL表达式或者jsp表达式,如果属性(value)指定的表达式或者对象为null,那么将输出这个defalut value部分的值


--------------------------------------------------------------------------------------------------------
set标签
用来在某个范围(request,session或者application)内设置值,或者设置某个对象的属性值
<c:set var="varName" value="varValue" [scope="page|request|session|application"]/>

<c:set property="propertyName"target="target"value="value"/>
各属性的说明如下
  • value:该属性指定变量或者对象中某个属性的值,并且可以是一个表达式
  • scope:设定变量的有效范围,如果不设置,默认为page
  • target:设置属性的一个对象,它必须是JavaBean 或者java.util.Map对象
  • var:变量名称,value属性指定的值就保存在这个变量中
  • property:设置对象中的一个属性


--------------------------------------------------------------------------------------------------------
remove标签
remove标签用于删除某个变量或者属性,这个标签与set标签是相对应的
<c:remove var="varName" [scope="page|request|session|application"] />
各属性的说明如下
  • scope:设定这个需要删除的变量的所在范围
  • var:需要删除的变量或者对象属性的名称


--------------------------------------------------------------------------------------------------------
catch标签
catch标签的功能和java中的try{…}catch{…}语句的功能很相似,它用于捕获嵌入到其中间语句抛出的异常
<c:catch var="varName">
相关操作语句
</c:catch>
各属性的说明如下
  • var:如果操作语句中出现异常,则catch会将异常保存在 varName变量中


--------------------------------------------------------------------------------------------------------
if标签
用于判断条件语句
<c:if test="checkCondition" var="varName" scope="page|request|session|application">
body content
</c:if>
各属性的说明如下
  • test:判断条件的表达式
  • var:这个变量用于保存test条件表达式判断所返回的true或者false值
  • scope:指定var变量所在的有效范围


--------------------------------------------------------------------------------------------------------
choose , when , otherwise标签
这些标签相当于java中的 switch , case , default 条件
<c:set var="num" scope="page" value="admin"/>
<c:choose>
<c:when test="${num=='guest'}">
<c:out value="guest"/>
</c:when>
<c:when test="${num=='admin'}">
<c:out value="admin"/>
</c:when>
<c:otherwise>
<c:out value="other"/>
</c:otherwise>
</c:choose>
各属性的说明如下
  • test:判断条件的表达式
  • var:这个变量用于保存test条件表达式判断所返回的true或者false值
  • scope:指定var变量所在的有效范围


--------------------------------------------------------------------------------------------------------
forEach迭代标签
该标签用来对一个collection集合中的一系列对象进行迭代输出,并且可以指定迭代次数
<c:forEach items="collection" var="varName" [varstatue="varStatusName"] [begin="begin"] [end="end"] [step="step"]>
       Body content
</c:forEach>
各属性的说明如下
  • var:也就是保存在collection集合类中的对象名称
  • items:将要迭代的集合类名
  • varStatus:存储迭代的状态信息,可以访问到迭代自身的信息
  • begin:如果指定了begin值,就表示从items[begin]开始迭代;如果没有指定begin值,则从集合的第一个值开始迭代
  • end:表示迭代到集合的end位时结束,如果没有指定end值,则表示一直迭代到集合的最后一位
  • step:指定迭代的步长


--------------------------------------------------------------------------------------------------------
forTokens标签
这个标签的作用和Java中的StringTokenizer类的作用非常相似,通过items属性来指定一个特定的字符串,
然后通过delims属性指定一种分隔符,通过指定的分隔符把items属性指定的字符串进行分组,与forEach标签一样,
forTokens标签也可以指定begin和end以及step属性值。
<c:forTokens items=”stringOfTokens” delims=”delimiters” var=”varName” [varStatus=”varStatusName”] [begin=”begin”] [end=”end”] [step=”step”]>
Body content
</c:forTokens>
各属性的说明如下
  • var:进行迭代的参数名称
  • items:指定的进行标签化的字符串
  • varSatus:每次迭代的状态信息
  • delims:使用这个属性指定的分隔符来分隔items指定的字符串
  • begin:开始迭代的位置
  • end:迭代结束的位置
  • step:迭代的步长


--------------------------------------------------------------------------------------------------------
import , redirect , url , param标签
<c:import>标签:与传统JSP页面重的<jsp:include>标签类似
<c:redirect>标签:进行页面的重定位
<c:url>:主要用来重写URL地址
<c:param>:一般param标签会与其他标签一起配套使用,用于参数值的传递


分享到:
评论

相关推荐

    jstl-1.2.1 jar

    jstl-1.2.1,之前的版本需要在服务器中配置一下,而且它分成了两个jar(jstl.jar和standard.jar)还有一个tld文件,而1.2已经不用配置了,直接把javax.servlet.jsp.jstl-1.2.1.jar和javax.servlet.jsp.jstl-api-1.2.1...

    jstl1.1.jar和standard1.1.jar

    今天做项目,用到了el表达式和jstl,在tomcat6.0上跑得好好的,没想到copy到tomcat5.5后,服务器起不来了,是tomcat版本的问题。查阅了不少资料,现在总结如下: 错误信息: java.lang.NoClassDefFoundError: javax...

    jstl-1.2.jar免费下载

    jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2.jar下载jstl-1.2...

    jstl标签使用的总结心得

    本人对jstl的一点小总结 JSTL是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。JSTL只能运行在支持JSP1.2和Servlet2.3规范的容器上,如tomcat 4.x。但是在即将推出的JSP 2.0中是作为标准...

    jstl el taglib 完整jar包

     如果你不使用JSTL 1.0标签 taglibs-standard-jstlel.JAR可以不使用。如果不使用XML库,Xalan包也可以省略。    如果你使用Maven构建您的应用程序,添加以下依赖关系到pom.xml文件: &lt;groupId&gt;org.apache....

    [jstl-1.2.jar]和[jstl-api-1.2.jar、standard.jar]两个版本.zip

    包含了两个版本jstl文件,standard.jar和jstl-api-1.2.jar是一个版本,导入时需要将两个都导入,jstl-1.2.jar是高版本的,是将低版本的两个文件合成一个了,故只需要导入一个文件即可,导入的同时在jsp文件首行写入 ...

    jstl-api-1.2和jstl-impl-1.2

    jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2,jstl-api-1.2和jstl-impl-1.2

    JSTL标签JSTL标签

    JSTL标签JSTL标签JSTL标签JSTL标签JSTL标签JSTL标签JSTL标签JSTL标签JSTL标签JSTL标签JSTL标签JSTL标签

    JSTL函数JSTL函数

    JSTL函数JSTL函数JSTL函数JSTL函数JSTL函数JSTL函数JSTL函数JSTL函数

    JSTL中文帮助文档

    JSTL中文帮助文档 JSTL中文帮助文档 JSTL中文帮助文档 。。。

    JSTL 标签大全详解

    JSTL是apache对EL表达式的扩展(也就是说JSTL依赖EL),JSTL是标签语言!JSTL标签使用以来非常方便,它与JSP动作标签一样,只不过它不是JSP内置的标签,需要我们自己导包,以及指定标签库而已! 如果你使用...

    jstl-1.2.jar 官方下载

    JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。JSTL只能运行在支持JSP1.2和Servlet2.3规范的容器上,如tomcat 4.x。在JSP 2.0中也...

    JSTL标签所需要的tld文件(c.tld、fmt.tld、fn.tld)

    JSTL标签所需要的tld文件,包括 c.tld、fmt.tld、fn.tld 三个 几乎所有的JSTL标签下载的zip中都只有一个c.tld,然后只讲解&lt;C:&gt;标签怎么用,其实&lt;fmt:&gt; &lt;fn:&gt;标签也非常好用和实用,找了好久才找到...

    jstl标准标签库jar包.zip

    &lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%&gt; jstl标准标签库的三个jar包:jstl-1.2、jstl-api-1.2、jstl-impl-1.2。 jstl标准标签库的三个jar包:jstl-1.2、jstl-api-1.2、jstl-impl-1.2。 ...

    jstl帮助 jstl帮助手册 jstl帮助文档

    jstl帮助 jstl帮助手册 jstl帮助文档

    jstljar包包含jstl.jar和standard.jar文件

    包含jstl.jar和standard.jar文件,如果要使用JSTL和EL表达式,就必须导入。

    jstl-api-1.2.jar、jstl-impl-1.2.jar

    鄙人分享 亲测可用 欢迎使用 jstl-impl-1.2.jar jstl-impl-1.2.jar、

    jstl-jar包.zip

    项目中添加 jstl.jar 和 standard.jar 两个jar包。然后在页面上添加如下引用: &lt;%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%&gt; &lt;%@ taglib uri="http://java.sun.com/jstl/fmt_rt" prefix="fmt...

Global site tag (gtag.js) - Google Analytics