`

处理模型数据之SessionAttributes注解

阅读更多

1、若希望在多个请求之间共用某个模型属性数据,则可以在控制器类上标注一个@SessionAttributes注解, SpringMVC将在模型中对应的属性暂存到HttpSession中,该注解只能放在类的上面,而不能修饰方法。

2、@SessionAttributes除了可以通过属性名指定需要放到会话中的属性外,还可以通过模型属性的对象类型指定哪些模型属性需要放到会话中
(1)@SessionAttributes(types=User.class) 会将隐含模型中所有类型为User.class的属性添加到会话中
(2)@SessionAttributes(value={"username", "password"})
(3)@SessionAttributes(types={User.class, Dept.class})
(4)@SessionAttributes(value={"username", "password"},types={Dept.class})

 

3、控制器类TestRequestMappingController.java

package com.springmvc.web.controller;

import java.util.Map;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.SessionAttributes;
import com.springmvc.bean.UserBean;

@SessionAttributes(value={"username","password"},types=UserBean.class)
@Controller
@RequestMapping("/springmvc")
public class TestRequestMappingController {

	@RequestMapping("/testSessionAttributes")
	public String testSessionAttributes(Map<String, Object> map) {
		map.put("username", "lipiaoshui");
		map.put("password", "123456");
		UserBean user = new UserBean("zhangsan", "111111", 20);
		map.put("user", user);
		return "success";
	}
	
}

 

4、访问代码

<a href="<%=path%>/springmvc/testSessionAttributes">Test SessionAttributes</a>

 

5、显示层代码

request username: ${requestScope.username }<br>
request password: ${requestScope.password }<br>
session username: ${sessionScope.username }<br>
session password: ${sessionScope.password }<br>
request user:${requestScope.user }<br>
sessin user:${sessionScope.user }<br>

 

6、显示效果

 

  • 大小: 6.2 KB
分享到:
评论

相关推荐

    Spring MVC SessionAttributes注解.docx

    @SessionAttributes原理 默认情况下Spring MVC将模型中的数据存储到request域中。当一个请求结束后,数据就失效了。如果要跨页面使用。...而@SessionAttributes注解就可以使得模型中的数据存储一份到session域中。

    SpringMVC处理模型数据.docx

    处理模型数据之@SessionAttributes注解 前面介绍的ModelAndView、Map、Model等都是将数据放在了request请求域中,若希望在多个请求之间共享模型数据,可以在控制器上标注一个@SessionAttributes注解,SpringMVC会将...

    SpringMVC处理模型数据-2.docx

    – ModelAndView: 处理方法返回值类型为 ModelAndView时, 方法体即可通过该对象添加模型数据 – Map及Model: 入参为org.springframework.ui.Model、org.springframework.ui.ModelMap 或 Java.uti.Map 时,处理...

    SpringMVC示例

    RequestParam 注解、RequestHeader 注解、CookieValue 注解、使用POJO作为参数(属性与页面自动匹配及级联)、使用Servlet原生API作为参数、处理模型数据(ModelAndView、Map、SessionAttributes 注解)、...

    SpringMVC Employee Demo

    本次实践内容包括RequestMapping关键字修饰类和方法(请求方式、请求参数&...处理模型数据(ModelAndView、Map、SessionAttributes注解)、ModelAttribute注解如修饰POJO类型的入参、SessionAttributes注解引发的异常...

    SpringMVC-4 处理模型数据

    通过ModelAndView、Map与Model、@SessionAttributes和@ModelAttribute注解来处理模型数据;其中,@ModelAttribute是重点,说明其运行流程并进行代码分析,最终给出SpringMVC目标方法的POJO类型参数的入参全过程,并...

    Spring3MVC注解教程.ppt

    访问数据模型:@SessionAttributes 一场由@SessionAttributes引发的血案... 如何避免@SessionAttributes引发的血案 目录 Spring MVC如何解析视图 视图解析器类型 基于协商的视图解析器 目录 本地化:基础原理...

    Spring MVC 3.0实战指南.ppt

    访问数据模型:@SessionAttributes 一场由@SessionAttributes引发的血案... 如何避免@SessionAttributes引发的血案 目录 Spring MVC如何解析视图 视图解析器类型 基于协商的视图解析器 目录 本地化:基础原理 本地化:...

    Spring中文帮助文档

    3.12.6. 用注解提供限定符元数据 3.13. 注册一个LoadTimeWeaver 4. 资源 4.1. 简介 4.2. Resource接口 4.3. 内置 Resource 实现 4.3.1. UrlResource 4.3.2. ClassPathResource 4.3.3. FileSystemResource ...

    Spring API

    3.12.6. 用注解提供限定符元数据 3.13. 注册一个LoadTimeWeaver 4. 资源 4.1. 简介 4.2. Resource接口 4.3. 内置 Resource 实现 4.3.1. UrlResource 4.3.2. ClassPathResource 4.3.3. FileSystemResource ...

Global site tag (gtag.js) - Google Analytics