SpringMVC框架
第5章 处理响应数据
5.1 SpringMVC 输出模型数据概述
5.1.1提供了以下几种途径输出模型数据
- ModelAndView: 处理方法返回值类型为 ModelAndView 时, 方法体即可通过该对象添加模型数据
- Map 及 Model: 入参为springframework.ui.Model、
org.springframework.ui.ModelMap 或 java.uti.Map 时,处理方法返回时,Map 中的数据会自动添加到模型中。
- @SessionAttributes: 将模型中的某个属性暂存到 HttpSession 中,以便多个请求之间可以共享这个属性
- @ModelAttribute: 方法入参标注该注解后, 入参的对象就会放到数据模型中
5.2处理模型数据之 ModelAndView
5.2.1 ModelAndView介绍
- 控制器处理方法的返回值如果为 ModelAndView, 则其既包含视图信息,也包含模型
数据信息。
2)添加模型数据:
MoelAndView addObject(String attributeName, Object attributeValue)
ModelAndView addAllObject(Map<String, ?> modelMap)
3)设置视图:
void setView(View view)
void setViewName(String viewName)
5.2.2 实验代码
- 增加控制器方法
/** * 目标方法的返回类型可以是ModelAndView类型 * 其中包含视图信息和模型数据信息 */ @RequestMapping("/testModelAndView") public ModelAndView testModelAndView(){ System.out.println("testModelAndView"); String viewName = "success"; ModelAndView mv = new ModelAndView(viewName ); mv.addObject("time",new Date().toString()); //实质上存放到request域中 return mv; } |
- 增加页面链接
<!--测试 ModelAndView 作为处理返回结果 --> <a href="springmvc/testModelAndView">testModelAndView</a> |
- 增加成功页面,显示数据
time: ${requestScope.time } |
- 断点调试