【SpringMVC】给前端页面的request、session域中存放数据

给前端页面request域中存放数据:

**有Model、Map、ModelMap三种方法
(一)Model方法给前端页面request域中存放数据

  1. 在控制器组件(用于拦截前端页面发送的请求)中添加如下代码:
@RequestMapping(value="/handle02")
	public String handle02(Model model){
		
		model.addAttribute("msg", "你好坏!");
		System.out.println("model的类型:"+model.getClass());
		return "success";
	}

说明:该段代码写在控制器组件中,“/handle02” 是拦截的前端页面发送的“/handle02”请求。handle02()方法是对拦截请求后的处理。model.addAttribute(“msg”, “你好坏!”);——在前端页面request域中存储"msg", "你好坏!"数据。

  1. 配置前端“success”页面。从request域中拿到存入的数据
<body>
	<h1>成功!</h1><br>
	pageContext:${pageScope.msg}<br/>
	request:${requestScope.msg}<br/>
	session:${sessionScope.msg}<br/>
	application:${applicationScope.msg}<br/>
</body>

(二)Map方法给前端页面request域中存放数据

  1. 在控制器组件中配置以下代码:
@RequestMapping(value="/handle01")
	public String handle02(java.util.Map<String, Object> map){
		map.put("msg", "你好");
		System.out.println("map的类型:"+map.getClass());
		return "success";
	}

说明:map.put(“msg”, “你好”);——给前端页面request域中存放数据。

  1. 配置前端“success”页面。从request域中拿到存入的数据(同上)
    (三)ModelMap方法给前端页面request域中存放数据
  2. 在控制器组件中配置以下代码:
@RequestMapping(value="/handle03")
	public String handle03(ModelMap modelMap){
		modelMap.addAttribute("msg", "你好棒!");
		System.out.println("modelmap的类型:"+modelMap.getClass());
		return "success";
	}

说明:modelMap.addAttribute(“msg”, “你好棒!”);——给前端页面request域中存放数据。

  1. 配置前端“success”页面。从request域中拿到存入的数据(同上)

给前端页面session域中存放数据:

在控制器组件(类)上添加@SessionAttributes()注解即可

【SpringMVC】给前端页面的request、session域中存放数据_第1张图片
说明:
1.使用一个注解 @SessionAttribute(只能标注在类上);
2.给BindingAwareModelMap(request域)中保存的数据,同时给session中放一份;
3.value指定保存数据时要给session中放的数据的key——即如果value值如上图所示,说明在给request域中存放数据,其key值为“msg”时,顺便给session域中存放该值,如果给request域中存放的数据key值不是“msg”,则对应的值不会存放在session域中。

你可能感兴趣的:(后端,java,计算机,spring,java)