`
wangyong
  • 浏览: 41677 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

JSTL语法及参数详解

    博客分类:
  • JAVA
阅读更多

 

JSTL语法及参数

JSTL包含以下的标签:

常用的标签:如<c:out>、<c:remove>、<c:catch>、<c:set>等

 

 

 

条件标签:如<c:if><c:when>、<c:choose>、<c:otherwise>等

 

 

 

URL标签:如<c:import>、<c:redirect>和<c:url>等

 

 

 

XML标签:如<xml:out>等

 

 

 

国际化输出标签:如<fmt:timeZone>等

 

 

 

SQL标签:如<sql:query>、<sql:update>、<sql:transaction>等

 

 

 

 

 

 

一般用途的标签:

1.<c:out>

没有Body时的语法

<c:out value=”value” [escapeXml=”{true|false}”] [default=”defaultValue”]/>

有Body时的语法

<c:out value=”value” [escapeXml=”{true|false}”]>

这里是Body部分

</c:out>

 

 

 

名字 类型 描述

value Object 将要输出的表达式

escapeXml boolean 确定以下字符:<,>,&,’,”在字符串中是否被除数,默认为true

default Object 如果vaule计算后的结果是null,那么输出这个默认值

 

 

 

2.<c:set>

这个标签用于在某个范围(page、request、session、application等)中使用某个名字设定特定的值,或者设定某个已经存在的javabean对象的属性。他类似于<%request.setAttrbute(“name”,”value”);%>

语法1:使用value属性设定一个特定范围中的属性。

<c:set value=”value” var=”varName” [scope=”{page|request|session|application}”]/>

语法2:使用value属性设定一个特定范围中的属性,并带有一个Body。

<c:set var=”varName” [scope=”{page|request|session|application}”]>

Body部分

</c:set>

语法3:设置某个特定对象的一个属性。

<c:set value=”value” target=”target” property=”propertyName”/>

语法4:设置某个特定对象的一个属性,并带有一个Body。

<c:set target=”target” property=”propertyName”>

Body部分

</c:set>

 

 

 

名字 类型 描述

value Object 将要计算的表到式。

var String 用于表示value 值的属性,如果要在其他标签中使用,就是通过这 个var指定的值来进行的。它相当于在标签定义了一个变量,并且这个变量只能在标签中的一个。

scope String var的有效范围,可以是page|request|session|application中的一个

target String 将要设置属性的对象,它必须是javabean或则java.util.Map对象

property Object 待设定的Target对象中的属性名字,比如在javabean中有个name属性,提供了setUserId方法,那么这里填userId。

 

 

 

3.<c:remove>

<c:remove var=”varName” [scope=”{page|request|session|application}”]/>

 

 

 

4.<c:catch>

这个标签相当于捕获在它里边的标签抛出的异常对象

<c:catch [var=”varName”]> //var是异常的名字

内容

</c:catch>

 

 

 

条件标签

1. <c:if>

语法1:无Body情况

<c:if test=”testCondition” var=”varName” [scope=”page|request|session|application”]/>

语法2:有Body的情况

<c:if test=”testCondition” var=”varName” [scope=”page|request|session|application”]>

Body内容

</c:if>

 

 

 

名字 类型 描述

test Boolean 表达式的条件,相当于if()中的条件判断语句。

var String 表示这个语句的名字。

scope String var这个变量的作用范围。

 

 

 

2.<c:choose>

语法:<c:choose>

Body内容(<c:when>和<c:otherwise>子标签)

</c:choose>

注意:它的Body只能由以下元素组成:

1) 空格

2) 0或多个<c:when>子标签,<c:when>必须在<c:otherwise>标签之前出现.

3) 0个或多个<c:otherwise>子标签。

 

 

 

3.<c:when>

代表的是<c:choose>的一个条件分支,只能在<c:choose>中使用

语法:<c:when test=”testCondition”> //test是boolean类型,用于判断条件真假

Body语句

</c:when>

 

 

 

4.<c:otherwise>

代表的是<c:choose>中的最后选择。必须在最后出现

<c:otherwise>

内容

</c:otherwise>

 

 

 

迭代标签

1.<c:forEach>

语法1:在Collection中迭代

<c:forEach[var=”varName”] items=”collection” [varStatus=”varStatusName”]

[begin=”begin”] [end=”end”] [step=”step”]

Body内容

</c:foeEach>

 

 

 

语法2:迭代固定的次数.

<c:forEach [var=”varName”] [varStatus=”varStatusName”]

[begin=”begin”] [end=”end”] [step=”step”]

Body内容

</c:foeEach>

 

 

 

名字 类型 描述

var String 迭代的参数,它是标签参数,在其他标签中通过它来引用这个标签中的内容。

Items Collection、ArrayList、 要迭代的items集合.

Iterator、Map、String、

Eunmeration等

VarStatus String 表示迭代的状态,可以访问迭代自身的信息

Begin int 表示开始迭代的位置。

End int 表示结束迭代的位置。

Step int 表示迭代移动的步长,默认为1。

 

 

 

URL相关的标签

1.<c:import>

语法1:资源的内容使用String对象向外暴露

<c:import url=”url” [context=”context”]

[var=”varName”] [scope=”{page|request|session|application}”] [charEncoding=”charEncoding”]>

内容

</c:import>

 

 

 

语法2:资源的内容使用Reader对象向外暴露。

<c:import url=”url” [context=”context”]

varReader=”varReaderName” [charEncoding=”charEncoding”]>

内容

</c:import>

名字 类型 描述

url String 待导入资源的URL,可以是相对路径和绝对路径,并且可以导入其他主机资源

context String 当使用相对路径访问外部context资源时,context指定了这个资源的名字。

var String 参数的名字。

scope String var参数的作用范围。

cahrEncoding String 输入资源的字符编码。

varReader String 这个参数的类型是Reader,用于读取资源。

 

 

 

2.<c:redirct>

语法1:没有Body的情况.

<c:redirect url=”value” [context=”context”]/>

语法2:有Body情况下,在Body中指定查询的参数

<c:redirect url=”value” [context=”context”]>

<c:param name=”name” value=”value”/>

</c:redirect>

 

 

 

3.<c:url>

语法1:没有Body

<c:url value=”value” [context=”context”] [var=”varName”] [scope=”{page|request|session+application}”]/>

语法2:有Body

<c:url value=”value” [context=”context”] [var=”varName”] [scope=”{page|request|session+application}”]>

<c:param name=”name” value=”value”/>

</c:url>

 

 

 

名字 类型 描述

value String URL值

context String 当使用相对路径访问外部context资源时,context指定了这个资源的名字

var String 标识这个URL标量。

Scope String 变量作用范围。

 

 

 

SQL相关的标签

1.<sql:setDataSource>

2.<sql:query>

3.<sql:update>

4.<transaction>

5.<param>

分享到:
评论

相关推荐

    JSTL语法及参数标签

    ### JSTL 语法及参数标签详解 #### 一、条件标签 JSTL(JavaServer Pages Standard Tag Library)提供了一系列强大的标签库来简化Web应用的开发过程。其中,条件标签是开发者在处理动态页面时不可或缺的一部分。 ...

    JSTL语法介绍 。。

    ### JSTL 语法介绍及核心功能详解 #### 一、概述 JSTL(JavaServer Pages Standard Tag Library,JavaServer页面标准标签库)是一种专为简化JavaServer Pages(JSP)开发而设计的标准标签库。它提供了一系列的标签...

    jstl语法ppt课件

    **JSTL(JavaServer Pages Standard Tag Library)是Java服务器端的一个标准标签库,它提供了一...通过学习提供的`jstl语法.ppt`课件,开发者将进一步了解这些标签的详细用法和实战技巧,从而更好地运用到项目开发中。

    jstl学习大全,jstl源码,很全的jstl学习代码

    **JSTL(JavaServer Pages Standard Tag Library)学习大全** JSTL是JavaWeb开发中的一个强大工具,它提供了一套标准的标签库,用于简化HTML或XML页面上的JavaServer Pages(JSP)代码。本资源集合包含了丰富的JSTL...

    JSTL循环语法,java

    #### 二、JSTL循环标签——`&lt;c:forEach&gt;`详解 ##### 2.1 `&lt;c:forEach&gt;`标签基本用法 `&lt;c:forEach&gt;`是JSTL中最常用的循环标签之一,用于对集合或数组进行迭代操作。其基本语法结构如下: ```jsp ${collection}" var...

    JSTL,EL表达式语法简介

    **JSTL的XML标签库(XML Tags)**提供了处理XML文档的功能,如解析、转换和输出XML。这些标签可以帮助开发者在JSP页面中轻松处理XML数据。 **JSTL的函数库(Functions Tags)**引入了一些额外的函数,这些函数通常...

    jstl标签 forEach详解

    jstl forEach 标签详解 jstl forEach 标签是 JavaServer Pages Standard Tag Library (JSTL) 中的一个标签,用于循环控制,可以将集合中的成员循序浏览一遍。该标签的运作方式为当条件符合时,就会持续重复执行的...

    JSTL标签基本用法详解

    基本语法是:`&lt;c:out value="expression"/&gt;`,其中`expression`是需要输出的变量或表达式。 2. `&lt;c:set&gt;` `&lt;c:set&gt;` 标签用来设置变量。它接受两个主要属性:`var`(定义变量名)和`value`(设置变量值)。例如:`...

    jstl两个核心包和jstl标签库EL表达式详解

    **JSTL(JavaServer Pages Standard Tag Library)**是Java Web开发中的一种标准标签库,它简化了在JSP页面中的编程,...在学习过程中,参考“JSTL标签库.doc”和“EL表达式详解.doc”文档将有助于深入理解这两个主题。

    JSTL中文帮助文档

    - EL 可以直接在 JSTL 标签中使用,例如 `${}` 语法。 7. **优点** - 提高代码可读性:JSTL 标签比 JSP 脚本更直观,便于理解。 - 分离关注点:JSTL 有助于实现 MVC 设计模式,将业务逻辑从视图层分离。 - 更少...

    JSTL - EL表达式详解

    JSTL 1.1规范中的EL可以独立于JSTL标签库使用,JSP2.0容器能够直接解析和执行EL表达式。这使得EL在JSP页面的任何地方都可直接应用,增强了代码的可读性和可维护性。 总的来说,JSTL和EL为JSP开发带来了标准化和效率...

    jstl,jstl实例源码

    **JSTL(JavaServer Pages Standard Tag Library)详解与实例源码分析** JSTL,全称为JavaServer Pages Standard Tag Library,是Java EE平台中一个用于简化JSP开发的标签库,它提供了一系列预定义的标签,使得...

    jstl和el的语法

    【标签详解】 1. 功能:`&lt;c:out&gt;`标签主要负责将指定的值输出到页面上,同时提供了自动转义HTML特殊字符的功能,以防止跨站脚本攻击(XSS)。 2. 语法: - 无标签体语法:`[escapeXml="{true|false}"] [default=...

    jstl_jar包.zip

    JSTL 标签库是一种可重用的组件,它允许开发者通过简单的标签语法来替代复杂的 Java 代码。这种做法有助于将业务逻辑和表现逻辑分离,使得 JSP 页面更加简洁,易于理解和维护。 标签库的使用提高了代码的可读性,...

    jstl核心库使用详解.doc

    JSTL,全称为Java Standard Tag Library,是Apache Jakarta Taglibs项目的一部分,专为简化JSP页面的开发和提高其可读性及可维护性而设计。通过集成一系列预定义的标签,JSTL减少了对内联Java代码的需求,使JSP页面...

    jstl源码jstl学习

    2. **减少错误**:相比于直接在JSP页面中写Java脚本,使用JSTL可以降低语法错误的可能性。 3. **提高重用性**:标签可以被多次复用,提高代码的复用率。 4. **更好的维护性**:JSTL与Servlet API解耦,使得升级和...

    jstl使用xml出错

    - **Web应用部署配置**:在你的`web.xml`配置文件中,确认已添加了必要的JSTL初始化参数,例如: ```xml &lt;taglib-uri&gt;http://java.sun.com/jsp/jstl/core&lt;/taglib-uri&gt; &lt;taglib-location&gt;/WEB-INF/c.tld ...

Global site tag (gtag.js) - Google Analytics