# JSTL`<c:set>`核心标签

> 原文： [https://beginnersbook.com/2013/11/jstl-cset-core-tag/](https://beginnersbook.com/2013/11/jstl-cset-core-tag/)

`<c:set>`核心 JSTL 标签用于为指定范围内的对象或变量赋值。让我们用**示例**来理解这一点。

这里我将一个字符串值赋给[应用范围](https://beginnersbook.com/2013/11/jsp-implicit-object-application-with-examples/ "Application")中的变量`name`（它允许我在应用的任何 JSP 页面中访问我的变量）。在另一页（`display.jsp`）上，我使用[`<c:out>`标签](https://beginnersbook.com/2013/11/jstl-cout-core-tag/ "`<c:out>` tag")和 [EL](https://beginnersbook.com/2013/11/jsp-expression-language-el/) 在浏览器上打印了值。

```html
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>Example of c:set tag</title>
</head>
<body>
<c:set var="name" scope="application" value="Chaitanya Pratap Singh"/>
<a href="display.jsp">Display</a>
</body>
</html>
```

`display.jsp`

```html
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:out value="${name}"/>
```

输出：以下是上述示例输出的屏幕截图。

![c-set-example](../Images/fe72806d77eea95f6440cdc397c78e07.jpg)

![c-set-example2](../Images/024a86dd9cdbd4e31ce95287d089ce7b.jpg)

**`<c:set>`标签的属性**

1）`value`：它可以是硬编码值或表达式。例如以下是`<c:set>`的允许变体标签：

变量`myvar`的值将存储在对象名称中。

```html
<c:set var="name" scope="application" value="${myvar}"/>
```

表达式的结果将存储在对象中。

```html
<c:set var="sum" scope="application" value="${1+3+6}"/>
```

2）`var`：它保存变量/对象名称

3）`scope`：可以是[`request`](https://beginnersbook.com/2013/11/jsp-implicit-object-request-with-examples/ "Request object")，[`session`](https://beginnersbook.com/2013/11/jsp-implicit-object-session-with-examples/ "Session object")，[`page`](https://beginnersbook.com/2013/11/jsp-implicit-objects/ "Page object")和[`application`](https://beginnersbook.com/2013/11/jsp-implicit-object-application-with-examples/ "application object")。在上面的例子中，我们已将范围指定为应用，但它可以是上述四个范围之外的任何内容。这一切都取决于要求。