10030---springmvc中<c:set> / <c:remove>标签的妙用
2016-03-08 16:00
573 查看
<c:set>
<c:set>标签可以将el表达式的值赋到session中。我们都知道,springmvc中,后台代码可以在Model中存很多值,在前台页面中用EL表达式又能取出来。
如果要将取出来的值存入session范围内,<% session.setAttribute() %> 是不行的,因为<%%>内是后台
代码,无法用EL表达式。这个时候,<c:set>就派上用场了。
<c:set>标签就是<jsp:setProperty>行为标签的孪生兄弟。
这个标签之所以很有用呢,是因为它会计算表达式的值,然后使用计算结果来设置 JavaBean
对象或 java.util.Map 对象的值。
示例:
<c:set scope="session" var="sessionCountries" value="${result.data.countries}" /> <c:forEach var="country" items="${sessionScope.sessionCountries}"> country </c:forEach>
===
属性
<c:set>标签有如下属性:
属性 | 描述 | 是否必要 | 默认值 |
---|---|---|---|
value | 要存储的值 | 否 | 主体的内容 |
target | 要修改的属性所属的对象 | 否 | 无 |
property | 要修改的属性 | 否 | 无 |
var | 存储信息的变量 | 否 | 无 |
scope | var属性的作用域 | 否 | Page |
<c:remove>
<c:remove>标签用于移除一个变量,可以指定这个变量的作用域,若未指定,则默认为变量第一次出现的作用域。这个标签不是特别有用,不过可以用来确保JSP完成清理工作。
属性
<c:remove>标签有如下属性:
属性 | 描述 | 是否必要 | 默认值 |
---|---|---|---|
var | 要移除的变量名称 | 是 | 无 |
scope | 变量所属的作用域 | 否 | 所有作用域 |
实例演示
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>c:remove 标签实例</title>
</head>
<body>
<c:set var="salary" scope="session" value="${2000*2}"/>
<p>Before Remove Value: <c:out value="${salary}"/></p>
<c:remove var="salary"/>
<p>After Remove Value: <c:out value="${salary}"/></p>
</body>
</html>
相关文章推荐
- 【Java】抽象类和接口的区别
- JDK的下载与验证
- (1)Caesar密码算法的Java实现
- 利用二维数组输出杨辉三角
- sse3编译命令
- Java堆内存和栈内存
- Java NIO系列教程(六) Selector
- 5种Java经典创建型模式详解
- java bean基础
- java提交from表单(用于数据字段很多,不用后台手动赋值)
- java实现压缩、解压缩文件
- java static锁和非static锁区别
- IT十八掌作业_java基础第七天_匿名内部类、异常、包和jar
- java web开发 图片上传功能
- Java常用类源码分析_Calendar类
- java se 多线程下载
- eclipse中不能找到dubbo.xsd报错”cvc-complex-type.2.4.c“的 两种解决方法
- eclipse-failed to load the JNI shared library
- java protected 与默认权限的区别
- 控制小数点后的位数