`

JSTL中c:set标签的要点和技巧

阅读更多

c:set标签有两种不同的设置:var和target。

var“版本”用于设置作用域属性,target“版本”用于设置bean属性或Map值。

这两个版本都有两种形式:有体和没有体。有体的只是放入值的另一种途径。

★ var“版本”

  1. <c:set var="userLevel" scope="session" value="Cowboy"/>  
  2.   
  3. <c:set var="fido" value="${person.dog}"/>  
  4.   
  5. <c:set var="user" scope="session">  
  6.    Sheriff, Bartender, Cowgirl   
  7. </c:set>  

如果“value”为null,“var”指定的属性将被删除!

如果“var”指定的属性不存在,则会创建一个属性,但仅当“value”不为null时才会创建新属性。

★ target“版本”

  1. <c:set target="${petMap}" property="dogName" value="Clover" scope="session"/>  
  2.   
  3. <c:set target="${person}" property="name">  
  4.    ${foo.name}   
  5. </c:set>  

如果“target”是一个Map,“property”指定的是该Map的一个键;如果“target”是一个bean,“property”指定的是该bean的一个成员字段。

如果“target”表达式为null,容器会抛出一个异常。

如果“target”表达式不是一个Map或bean,容器会抛出一个异常。

如果“target”表达式是一个bean,但是这个bean没有与“property”匹配的成员字段,容器会抛出一个异常。

★ 使用c:set标签的要点

不能同时有“var”和“target”属性。

“scope” 是可选的,如果没有使用这个属性,则默认为页面作用域。具体的,当没有使用这个属性时,容器会依次在页面作用域、请求作用域、会话作用域、应用作用域查 找,如果找不到“var”指定名字的作用域属性,容器就会在页面作用域新建一个属性;如果找不到“target”指定的对象,容器会抛出一个异常。

分享到:
评论

相关推荐

    JSTL标准标签库 <C:out>、<c:set>、<c:remove>和<c:catch>标记 <c:if>、<c:choose>、<c:when>和<c:otherwise>标记 <c:forEach>和<c:forTokens>标记

    2. `&lt;c:set&gt;`:设置变量,可以将值赋给一个页面作用域、请求作用域、会话作用域或应用作用域的变量。 3. `&lt;c:remove&gt;`:从指定的作用域中移除变量。 4. `&lt;c:catch&gt;`:处理异常,可以在JSP页面中捕获和处理异常,避免...

    JSTL中if标签使用方法

    ### JSTL中if标签使用方法详解 JSTL(JavaServer Pages Standard Tag Library)是为简化JSP页面开发而设计的一组标准标签库。它提供了处理数据、条件逻辑等功能的强大工具,使得开发者无需编写复杂的Java代码即可...

    jstl标签库.txt

    `&lt;c:set&gt;`标签用于在JSP页面的不同作用域内设置或更新变量。其支持多种用法: - **设置单一值到作用域变量**: ```xml &lt;c:set value="value" var="varName" [scope="{page|request|session|application}"]/&gt; ```...

    JSTL中文帮助文档

    - `&lt;c:set&gt;`:用于在作用域内设置变量。 - `&lt;c:out&gt;`:用于安全地输出变量,防止 XSS 攻击。 - `&lt;c:if&gt;` 和 `&lt;c:choose&gt;`:条件判断标签,类似于编程语言中的 if-else 语句。 - `&lt;c:forEach&gt;` 和 `&lt;c:forTokens&gt;...

    jstl中判断list中是否包含某个值的简单方法.docx

    在上面的代码中,我们首先使用 c:set 标签将一个变量 iscontain 设置为 false。然后,我们使用 c:forEach 标签遍历 list 中的每个元素,并使用 c:if 标签判断当前元素是否等于要查找的值。如果找到了该值,则将 ...

    JSTL 核心标签库 使用

    本文将深入探讨JSTL的核心标签库(core tag library),主要包括`&lt;c:set&gt;`、`&lt;c:remove&gt;`、`&lt;c:catch&gt;`、`&lt;c:if&gt;`、`&lt;c:choose&gt;`以及`&lt;c:forEach&gt;`等标签的使用。 1. `&lt;c:set&gt;`标签: `&lt;c:set&gt;`用于设置变量的值,...

    JSTL 标签库 jsp C 标签库

    **JSTL(JavaServer Pages Standard Tag Library,JSP标准标签库)是Java社区为了简化JSP开发而提出的一个标准,它提供了一系列的标签来处理常见的任务,如迭代、条件判断、XML处理等,旨在减少Java代码在JSP页面中...

    JSTL详解--Core 标签库介绍

    `&lt;c:set&gt;`标签用于设置变量,如下: ```jsp &lt;c:set var="message" value="Hello, World!" scope="request" /&gt; ``` 这个例子中,变量`message`在request作用域内被设置为字符串`Hello, World!`。 通过使用JSTL Core...

    java中jstl(C标签)案例

    本案例主要关注JSTL中的C标签库,它是JSTL的核心部分,提供了控制流程和数据操作的标签。 C标签库是JSTL的一部分,全称为Core标签库,包含了处理数据集合、条件判断、循环控制等功能的标签。以下是一些C标签库中...

    jstl入门标签手册

    JSTL还包括其他标签,如`&lt;c:forEach&gt;`用于迭代集合,`&lt;c:forEach&gt;`和`&lt;fmt:formatDate&gt;`用于日期和时间格式化,以及`&lt;c:remove&gt;`用于删除变量等。学习和掌握JSTL能显著提高JSP开发的效率和代码的可读性。

    JSTL常用标签总结

    其次,&lt;c:set&gt;标签用于将变量存储在JSP的某个范围内,或者将值设置到JavaBean的属性或Map对象中。比如,我们可以在session范围内设置用户名和密码,并通过EL表达式访问这些值:&lt;c:set var="username" value="jack" ...

    JSTL标签配置流程

    - `&lt;c:set&gt;`:设置变量。 - `&lt;c:out&gt;`:输出值,可以防止XSS攻击。 - `&lt;c:remove&gt;`:删除变量。 - `&lt;c:url&gt;`和`&lt;c:param&gt;`:处理URL和参数。 此外,还有其他库,如`fmt`库用于格式化输出,`sql`库处理数据库操作等...

    JSTL(jsp标准标签库)

    例如,`&lt;c:set var="name" value="admin" scope="session"&gt;&lt;/c:set&gt;`,在session作用域中设置变量`name`的值为“admin”。 3. **`&lt;c:remove&gt;`**:删除变量。例如,`&lt;c:remove var="name" scope="session"/&gt;`,移除...

    jsp中标签JSTL中英文对照的中文帮助文档(chm格式)

    提供的"JSTL中英文对照版.chm"文件是JSTL的中文帮助文档,包含了详细的标签解释、示例和使用指南,对于学习和使用JSTL的开发者来说非常有帮助。通过查阅这个文档,开发者可以快速查找并理解JSTL的每个标签及其用法,...

    jstl标签库jar包、例子、jstl中文帮助文档

    **JSTL(JavaServer Pages Standard Tag Library)标签库**是Java Web开发中的一个重要组成部分,它为JSP页面提供了一套标准的标签,使得开发者能够更方便地处理常见任务,如控制流、数据操作和XML处理等。...

    jstl标签库 手册

    - **核心标签库(Core Tags)**:包括用于输出、设置变量、移除变量和异常捕获的标签,如`&lt;c:out&gt;`、`&lt;c:set&gt;`、`&lt;c:remove&gt;`和`&lt;c:catch&gt;`。 - **国际化标签库(Internationalization Tags)**:用于处理多语言...

    jstl标签学习笔记

    通过使用`&lt;c:out&gt;`、`&lt;c:set&gt;`、`&lt;c:remove&gt;` 和 `&lt;c:if&gt;` 等标签,可以方便地处理输出、赋值、删除和条件判断等任务,提高了代码的可读性和可维护性。在实际开发中,JSTL是JSP开发不可或缺的一部分。

    JSTL核心标签库的一些应用

    - `&lt;c:set&gt;`:这个标签用于创建和设置变量,避免在JSP页面中混杂Java代码。`&lt;c:set&gt;`有两个主要属性:`var`用于指定变量名,`value`用于设置变量值。此外,还可以通过`scope`属性指定变量的作用域,如`page`, `...

    jstl标签jar包(jstl-api-1.2和jstl-impl-1.2)

    - `&lt;c:set&gt;`:设置变量。 - `&lt;c:out&gt;`:输出变量值,可以进行简单的HTML转义。 - `&lt;c:if&gt;` 和 `&lt;c:choose&gt;`:条件判断。 - `&lt;c:when&gt;` 和 `&lt;c:otherwise&gt;`:选择结构。 - `&lt;c:forLoop&gt;` 和 `&lt;c:forEach&gt;`:循环操作...

Global site tag (gtag.js) - Google Analytics