`

JSTL 常用标签属性

    博客分类:
  • JSP
JSP 
阅读更多
以下属性基于JSTL1.1

一般用途的标签:<c:out>, <c:set>, <c:remove>, <c:catch>

1.<c:out>
把计算的结果输出到JspWriter对象
语法1:没有Body的情况
    <c:out value="value" [escapeXml="{true|false}"] [default="defaultValue"]/>
语法2:有Body的情况
    <c:out value="value" [excapeXml="{true|false}"]
        default value
    </c:out>
<c:out>的Body可以是JSP代码,

属性说明: Name Type Description
value Object 将要计算的表达式
escapeXml Boolean 确定以下字符:<,>,&,',"在结果字符串中是否被转换成字符实例代码,默认为true
default Object 如果value是null,那么输出这个default值


2.<c:set>
用于在某个范围(Request, Session, Application等)中设置某个值,或者设置某个对象的属性.
语法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 content
    </c:set>
语法3.设置某个特定对象的一个属性.
    <c:set value="value" target="target" property="propertyName"/>
语法4.设置某个特定对象的一个属性,并且带有一个Body
    <c:set target="target" property="propertyName"/>
        body content
    </c:set>

属性说明:

Name Type Description
value Object 将要计算的表达式
var String 用于表示Value值的属性
scope String var的有效范围
target String 将要设置属性的对象,它必须是JavaBeans或者java.util.Map对象
property Object 待设置的Target对象中的属性名字


3.<c:remove>
用于删除某个变量或者属性
语法:
    <c:remove var="varname" [scope="{page|request|session|application}"]/>


属性说明:

Name Type Description
scope String 参数的范围
var String 待删除的参数变量名
     


4.<c:catch>
捕获嵌套在它里面的标签抛出的异常.
语法:
    <c:catch [var="varName"]>
        nested actions
    </c:catch>


属性说明:

Name Type Description
var String 用于标识这个异常的名字




条件标签:<c:if>, <c:choose>, <c:when>, <c:otherwise>


--------------------------------------------------------------------------------


1.<c:if>
用于进行条件判断,如果它的Test属性为true,那么就计算它的body.
语法1.
    <c:if test="testCondition" var="varName" [scope="{page|request|session|application}"]/>
语法2.
    <c:if test="testCondition" [value="varName"] [scope="{page|request|session|application}"]>
        body content
    </c:if>

属性说明:

Name Type Description
test Boolean 表达式的条件
var String test条件表达式计算的变量值,它的类型为Boolean
scope String var的范围


2.<c:choose>
用于条件选择,它和<c:when>以及<c:otherwise>一起使用
语法
    <c:choose>
        body content(<when> and <otherwise> subtags)
    </c:choose>
注意,它的body content只能由以下的元素构成:
    (1) 空格
    (2) 0个或多个<when>,<when>必须在,<otherwise>之前出现
    (3) 0个或一个<otherise>

3.<c:when>
代表<c:choose>的一个分支
语法:
    <c:when test="testCondition">
        body content
    </c:when>

属性说明:

Name Type Description
test Boolean 表达式的条件


有两个限制:
    (1)必须以<c:choose>作为它的父标签
    (2)必须在<c:otherwise>之前出现

4.<c:otherwise>
代表<c:choose>的最后选择
语法:
    <c:otherwise>
        conditional block
    </c:otherwise>
它的使用有两个限制
    (1)必须以<c:choose>作为它的父标签
    (2)必须是<c:choose>的最后分支


迭代标签:<c:forEach>,<c:forTokens>


--------------------------------------------------------------------------------


1.<c:forEach>
在一个包含一等系列对象的Collection中迭代计算它的bodyContent,或者重复迭代固定的次数
语法1:在Collection中迭代
    <c:forEach [var="varName"] items="collection"
    [varStatus="varStatusName"] [begin="begin"][end="end"][step="step"]>
        body content
    </c:forEach>
语法2:迭代固定的次数
    <c:forEach [var="varName"] [varStatus="varStausName"]
    begin="begin" end="end" [step="step"]>
        body content
    </c:forEach>

属性说明:

Name Type Description
var String 迭代参数的变量名
items 支持的类型 将要迭代的集合
varStatus String 表示迭代的状态,可以访问迭代自身的信息
begin int 开始索引
end int 结束索引
step int 迭代的步长


varStaus使用举例:
    <c:forEach var="user" items="${users}" varStatus="status">
    <c:out valur="${user.userName}"/><br/>
    <c:out value="${status.index}"/><br/>
    <c:out value="${status.count}"/><br/>
    <c:out value="${sataus.first}"/><br/>
    <c:out value="${status.last}"/><br/>
    </c:forEach>
<c:forEach>可以迭代java.util.Collection, Array, Map, Tokened, String等.

2.<c:forTokens>
专门用于处理TokeString的迭代,可以指定一个或者多个分隔符(delimiters)
语法:
    <c:forTokens items="stringOfTokens" delims="delimiters"
    [var="varName"] [varStatus="varStatusName"]
    [begin="begin"] [end="end"] [step="step"]>
        body content
    </c:forTokens>

属性说明:

Name Type Description
var String 迭代的参数名
items String 将要迭代的String
varStatus String 表示迭代的状态,可以访问迭代自身的信息
delims String 分隔符
begin int 开始索引
end int 结束索引
step int 迭代的步长



    <h4>使用"|"和","作为分割符</h4>
    <c:forTokens var="token" items="blue,red,green|yellow|pink|,black|white"
    delims="|,">
        <c:out value="${token}"/>&copy;
    </c:forTokens>


URL相关的标签<c:import>,<c:redirect>,<c:url>,<c:param>


--------------------------------------------------------------------------------


1.<c:import>
导入一个基于URL的资源
语法1:
    <c:import url="url" [context="context"] [var="varName"]
    [scope="{page|request|session|application}"]
    [charEncoding="charEncoding"]>
        optional body content for <c:param> subtags
    </c:import>
语法2:
    <c:import="url" [context="context"] varReader="varReaderName"
    [charEncoding="charEncoding"]>
        body content where varReader is consumed by another action
    </c:import>

属性说明:

Name Type Description
url String 待导入资源的URL
context String 当使用相对路径访问外部context资源时,context指定了这个资源的名字
var String 参数的名称
scope String var参数的作用范围
charEncoding String 输入资源的字符编码
varReader String 这个参数的类型是Reader,用于读取资源


2.<c:redirect>
把客户的请求重定向到另一个资源
语法1.
    <c:redirect url="value" [context="context"]/>
语法2.
    <c:redirect url="value" [context="context"]>
        <c:param>subtags
    </c:redirect>

属性说明:

Name Type Description
url String 待定向资源的URL
context String 当使用相对路径访问外部context资源时,context指定的这个资源的名字.
 


3.<c:url>
用于构造URL,主要的用途是URL重写
语法1.
    <c:url value="value" [context="context"]
    [var="varName"] [scope="{page|request|session|application}"]/>
语法2.
    <c:url value="value" [context="context"]
    [var="varName"] [scope="{page|request|session|application}"]>
        <c:param>subtags
    </c:url>

4.<c:param>
在<c:import>, <c:url>,<c:redirect>中添加请求的参数
语法1.
    <c:param name="name" value="value"/>
语法2.
    <c:param name="name">
        paramter value
    </c:param>
分享到:
评论

相关推荐

    JSTL常用标签总结

    以上便是JSTL中一些常用标签的介绍和示例。值得注意的是,在使用这些标签时,需要在JSP页面的顶部引入JSTL标签库。如:***"%&gt;。这样才能够正确地使用JSTL提供的标签功能。JSTL标签库在JSP开发中非常实用,可以大大...

    JSTL常用标签汇总

    ### JSTL常用标签汇总详解 #### 一、表达式操作 ##### 1. `&lt;c:out&gt;` **作用**:用于显示数据的内容。 **语法**: - **语法1(无本体内容)**: ```xml [escapeXml="{true|false}"] [default="defaultValue"] /&gt; ...

    JSTL_标签库详解大全JSTL常用标签汇总java开发jsp开发归类.pdf

    ### 二、JSTL常用标签 #### 1. `&lt;c:out&gt;` - 作用:安全地显示数据,避免XSS攻击。 - 语法: - 无本体内容:`[escapeXml="{true|false}"] [default="defaultValue"] /&gt;` - 有本体内容:`[escapeXml="{true|false}...

    JSTL_标签库详解大全JSTL常用标签汇总java开发jsp开发.pdf

    JSTL,全称JavaServer Pages Standard Tag Library,是Java Web开发中的一种标准标签库,它提供了一系列的标签来简化JSP页面中的编程逻辑。在本文中,我们将深入探讨JSTL的核心标签库,包括表达式操作、流程控制、...

    JSTL常用标签的用法和用例

    JSTL,全称JavaServer ...以上就是JSTL核心标签库中常用的几个标签及其用法。通过这些标签,开发者可以更方便地处理页面逻辑,使得JSP页面更加简洁、清晰。掌握这些标签的使用,能够显著提升JSP应用的开发效率和质量。

    JSTL标签库下载和配置使用

    **JSTL(JavaServer Pages Standard Tag Library)标签库**是Java Web开发中常用的一组标准标签,它为开发者提供了一种简洁的方式来处理常见的任务,如迭代、条件判断、XML处理等,使得JSP页面更加清晰,易于维护。...

    JAVAEE实验报告EL表达式和jstl标签库的使用.pdf

    JSTL 标签库提供了一些常用的标签,例如 foreach、if、choose 等,可以用于循环输出数据、条件判断和选择等。 JSTL 标签库的使用可以分为以下几个方面: 1. 循环输出数据:JSTL 的 foreach 标签可以用于循环输出...

    JSTL标签.zip

    Core标签库是JSTL最常用的部分,包含了处理流程控制、输出、URL操作等常见的功能。例如: - `&lt;c:out&gt;`:用于安全地输出变量,防止XSS攻击。 - `&lt;c:set&gt;`:用于设置变量的值。 - `&lt;c:remove&gt;`:删除一个变量。 - `...

    JSTL标签库 api

    JSTL的核心标签库是JSTL中最常用的库之一,它包含了一系列用于处理变量、流程控制和内容操作的标签。要使用这些标签,首先需要在JSP页面中通过`&lt;%@ taglib %&gt;`指令引入JSTL核心库,如: ```jsp ...

    JSTL 自定义标签

    其中,Core库是最常用的部分,包含了处理页面导航、条件语句、循环等基本操作的标签。 **创建自定义标签** 自定义标签的创建过程通常包括以下几个步骤: 1. **定义标签库描述符(TLD)文件**:TLD文件是XML格式的,...

    jstl标签库 手册

    JSTL的核心标签库(Core Library)是其最常用的部分,提供了多种功能强大的标签。 1. JSTL1.1 标签库: - **核心标签库(Core Tags)**:包括用于输出、设置变量、移除变量和异常捕获的标签,如`&lt;c:out&gt;`、`...

    JSTL标签教程

    其他常用标签库的引入方式类似,只需替换对应的前缀和URI即可。 #### 五、示例:使用JSTL标签 - **循环标签**:`&lt;c:forEach&gt;`可用于遍历列表或数组。 - **条件判断**:`&lt;c:if&gt;`和`&lt;c:choose&gt;`等标签用于实现条件...

    EL表达式&JSTL;标签库_jar包

    在JSTL中,`fmt`标签库用于格式化日期和数字,`fn`标签库提供了一些通用的函数,如字符串操作等,而`c`标签库则包含了条件和迭代操作,是JSTL中最常用的标签库。 `jstl.jar`文件包含了JSTL的核心库,提供了各种标签...

    JSTL2.0标准标签

    其中包含以下常用标签: - `&lt;c:if&gt;`:条件判断,允许根据指定的表达式的值决定是否执行某个代码块。 - `&lt;c:choose&gt;`, `&lt;c:when&gt;`, `&lt;c:otherwise&gt;`:多分支选择结构,类似于Java的switch语句。 - `&lt;c:forEach&gt;`:...

    JSTL常用表达式实例

    在"JSTL常用表达式实例"中,我们将会探讨一些常见的JSTL表达式及其应用。 1. **条件语句:if和choose** JSTL提供了`&lt;c:if&gt;`和`&lt;c:choose&gt;`标签来处理条件逻辑。`&lt;c:if&gt;`用于简单的条件判断,而`&lt;c:choose&gt;`则类似...

    JSTL标签用法.doc

    Core 标签库是JSTL中最常用的库之一,它提供了一系列常用的功能,包括条件判断、循环迭代以及URL操作等。下面详细介绍几个常用的标签: ##### 2.1 `&lt;c:out&gt;` 标签用于输出表达式的值。它可以接受多种类型的表达式...

    JSTL标签库使用需要的两个jar包

    这个库提供了诸如迭代、条件判断、URL处理、XML操作等常用功能的标签。例如,`&lt;c:forEach&gt;`用于遍历集合,`&lt;c:if&gt;`和`&lt;c:choose&gt;`用于条件判断,`&lt;c:url&gt;`和`&lt;c:param&gt;`用于构建URL和传递参数。 `jstl.jar`则包含了...

    JSTL标签使用手册-中文版.zip

    **JSTL(JavaServer Pages Standard Tag Library)标签库**是Java Web开发中常用的一组标准标签,它为JSP页面提供了丰富的功能,简化了页面的编写,使得代码更加清晰和易于维护。JSTL主要由五个核心标签库组成:Core...

Global site tag (gtag.js) - Google Analytics