c:set标签有两种不同的设置:var和target。
var“版本”用于设置作用域属性,target“版本”用于设置bean属性或Map值。
这两个版本都有两种形式:有体和没有体。有体的只是放入值的另一种途径。
★ var“版本”
- <c:set var="userLevel" scope="session" value="Cowboy"/>
-
- <c:set var="fido" value="${person.dog}"/>
-
- <c:set var="user" scope="session">
- Sheriff, Bartender, Cowgirl
- </c:set>
如果“value”为null,“var”指定的属性将被删除!
如果“var”指定的属性不存在,则会创建一个属性,但仅当“value”不为null时才会创建新属性。
★ target“版本”
- <c:set target="${petMap}" property="dogName" value="Clover" scope="session"/>
-
- <c:set target="${person}" property="name">
- ${foo.name}
- </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”指定的对象,容器会抛出一个异常。
分享到:
相关推荐
2. `<c:set>`:设置变量,可以将值赋给一个页面作用域、请求作用域、会话作用域或应用作用域的变量。 3. `<c:remove>`:从指定的作用域中移除变量。 4. `<c:catch>`:处理异常,可以在JSP页面中捕获和处理异常,避免...
### JSTL中if标签使用方法详解 JSTL(JavaServer Pages Standard Tag Library)是为简化JSP页面开发而设计的一组标准标签库。它提供了处理数据、条件逻辑等功能的强大工具,使得开发者无需编写复杂的Java代码即可...
`<c:set>`标签用于在JSP页面的不同作用域内设置或更新变量。其支持多种用法: - **设置单一值到作用域变量**: ```xml <c:set value="value" var="varName" [scope="{page|request|session|application}"]/> ```...
- `<c:set>`:用于在作用域内设置变量。 - `<c:out>`:用于安全地输出变量,防止 XSS 攻击。 - `<c:if>` 和 `<c:choose>`:条件判断标签,类似于编程语言中的 if-else 语句。 - `<c:forEach>` 和 `<c:forTokens>...
在上面的代码中,我们首先使用 c:set 标签将一个变量 iscontain 设置为 false。然后,我们使用 c:forEach 标签遍历 list 中的每个元素,并使用 c:if 标签判断当前元素是否等于要查找的值。如果找到了该值,则将 ...
本文将深入探讨JSTL的核心标签库(core tag library),主要包括`<c:set>`、`<c:remove>`、`<c:catch>`、`<c:if>`、`<c:choose>`以及`<c:forEach>`等标签的使用。 1. `<c:set>`标签: `<c:set>`用于设置变量的值,...
**JSTL(JavaServer Pages Standard Tag Library,JSP标准标签库)是Java社区为了简化JSP开发而提出的一个标准,它提供了一系列的标签来处理常见的任务,如迭代、条件判断、XML处理等,旨在减少Java代码在JSP页面中...
`<c:set>`标签用于设置变量,如下: ```jsp <c:set var="message" value="Hello, World!" scope="request" /> ``` 这个例子中,变量`message`在request作用域内被设置为字符串`Hello, World!`。 通过使用JSTL Core...
本案例主要关注JSTL中的C标签库,它是JSTL的核心部分,提供了控制流程和数据操作的标签。 C标签库是JSTL的一部分,全称为Core标签库,包含了处理数据集合、条件判断、循环控制等功能的标签。以下是一些C标签库中...
JSTL还包括其他标签,如`<c:forEach>`用于迭代集合,`<c:forEach>`和`<fmt:formatDate>`用于日期和时间格式化,以及`<c:remove>`用于删除变量等。学习和掌握JSTL能显著提高JSP开发的效率和代码的可读性。
其次,<c:set>标签用于将变量存储在JSP的某个范围内,或者将值设置到JavaBean的属性或Map对象中。比如,我们可以在session范围内设置用户名和密码,并通过EL表达式访问这些值:<c:set var="username" value="jack" ...
- `<c:set>`:设置变量。 - `<c:out>`:输出值,可以防止XSS攻击。 - `<c:remove>`:删除变量。 - `<c:url>`和`<c:param>`:处理URL和参数。 此外,还有其他库,如`fmt`库用于格式化输出,`sql`库处理数据库操作等...
例如,`<c:set var="name" value="admin" scope="session"></c:set>`,在session作用域中设置变量`name`的值为“admin”。 3. **`<c:remove>`**:删除变量。例如,`<c:remove var="name" scope="session"/>`,移除...
提供的"JSTL中英文对照版.chm"文件是JSTL的中文帮助文档,包含了详细的标签解释、示例和使用指南,对于学习和使用JSTL的开发者来说非常有帮助。通过查阅这个文档,开发者可以快速查找并理解JSTL的每个标签及其用法,...
**JSTL(JavaServer Pages Standard Tag Library)标签库**是Java Web开发中的一个重要组成部分,它为JSP页面提供了一套标准的标签,使得开发者能够更方便地处理常见任务,如控制流、数据操作和XML处理等。...
- **核心标签库(Core Tags)**:包括用于输出、设置变量、移除变量和异常捕获的标签,如`<c:out>`、`<c:set>`、`<c:remove>`和`<c:catch>`。 - **国际化标签库(Internationalization Tags)**:用于处理多语言...
通过使用`<c:out>`、`<c:set>`、`<c:remove>` 和 `<c:if>` 等标签,可以方便地处理输出、赋值、删除和条件判断等任务,提高了代码的可读性和可维护性。在实际开发中,JSTL是JSP开发不可或缺的一部分。
- `<c:set>`:这个标签用于创建和设置变量,避免在JSP页面中混杂Java代码。`<c:set>`有两个主要属性:`var`用于指定变量名,`value`用于设置变量值。此外,还可以通过`scope`属性指定变量的作用域,如`page`, `...
- `<c:set>`:设置变量。 - `<c:out>`:输出变量值,可以进行简单的HTML转义。 - `<c:if>` 和 `<c:choose>`:条件判断。 - `<c:when>` 和 `<c:otherwise>`:选择结构。 - `<c:forLoop>` 和 `<c:forEach>`:循环操作...