Spring MVC SessionAttributes注解

a、该注解只能应用在上;

b、该注解用于将Map、ModelMapModelModelAndView中的数据暂存到HttpSession中以使其可以在多个请求之间共用数据

c@SessionAttributes除了可以通过value或names注解属性指定哪些属性放到Session外,还可以通过type注解属性进行指定

 

userinfocontroller.java

package com.jd.userinfo;

import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.validation.FieldError;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.SessionAttributes;
import org.springframework.web.servlet.ModelAndView;

import com.jd.vo.UserInfo;

@Controller
@SessionAttributes({"userInfo"})
public class UserInfoController {

	@RequestMapping("/userinfo/toView.do")
	public ModelAndView editView() {
		ModelAndView mv = new ModelAndView("ok");
		UserInfo userInfo = new UserInfo();
		userInfo.setUsername("admin");
		userInfo.setPassword("123456");
		userInfo.setMobile("18838218972");
		userInfo.setAddress("河南省郑州市高新区升龙又一城");
		mv.addObject("userInfo", userInfo);
		return mv;
	}		
}

将这里面的值存到

@SessionAttributes({"userInfo"})  中
使其可以在多个请求之间共用数据。

显示页面:(jsp页面通过EL表达式即可获取userInfo中的的值

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
userName:${userInfo.username }
password:${userInfo.password }
mobile:${userInfo.mobile }
address:${userInfo.address }
</body>
</html>

输出结果:

发布了91 篇原创文章 · 获赞 8 · 访问量 4752

猜你喜欢

转载自blog.csdn.net/niuxikun/article/details/104504135