ModelAndView 的作用以及用法
使用 ModelAndView 类用来存储处理完后的结果数据, 以及显示该数据的视图. 从名字上看 ModelAndView 中的 Model 代表模型, View 代表视图, 这个名字就很好地解释了该类的作用. 业务处理器调用模型层处理完用户请求后, 把结果数据存储在该类的 model 属性中, 把要返回的视图信息存储在该类的 view 属性中, 然后让该 ModelAndView 返回该 Spring MVC 框架. 框架通过调用配置文件中定义的视图解析器, 对该对象进行解析, 最后把结果数据显示在指定的页面上.
具体作用:
1, 返回指定页面
ModelAndView 构造方法可以指定返回的页面名称,
也可以通过 setViewName() 方法跳转到指定的页面,
2, 返回所需数值
使用 addObject() 设置需要返回的值, addObject() 有几个不同参数的方法, 可以默认和指定返回对象的名字.
Objectl 返回值类型;
- /* 绑定下拉框 */
- @RequestMapping("/prodectName")
- @ResponseBody
- public Object getprodectName(){
- List<Product> products = userService.getproductName();
- return products;
- }
String 返回值类型:
1, 如果返回值为 null, 那么以请求名作为视图名进行跳转
2, 如果指定返回值, 那么按照指定返回值作为视图名进行跳转, 可以通过 model,modeMap 携带数据.
3, 如果返回值带有 forward 或者 redirect 前缀, 那么将会进行相应的请求或重定向, 不过不能通过 mvc 的数据模型携带数据, 可以通过 ServletApi 携带数据.
- @RequestMapping("/welcome")
- public String welcome(String userName, Model model){
- // 将用户名保存到对应的作用域中
- model.addAttribute("userName",userName);
- return "welcome";
- }
来源: http://www.bubuko.com/infodetail-3281142.html