SPRING框架中ModelAndView、Model、ModelMap区别【转】
来源:互联网 发布:windows程序设计 画圆 编辑:程序博客网 时间:2024/04/30 11:44
首先介绍ModelMap[Model]和ModelAndView的作用
Model 是一个接口, 其实现类为ExtendedModelMap,继承了ModelMap类。
ModelMap
ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可,他的作用类似于request对象的setAttribute方法的作用,用来在一个请求过程中传递处理的数据。通过以下方法向页面传递参数:
addAttribute(String key,Object value);
在页面上可以通过el变量方式$key或者bboss的一系列数据展示标签获取并展示modelmap中的数据。
modelmap本身不能设置页面跳转的url地址别名或者物理跳转地址,那么我们可以通过控制器方法的返回值来设置跳转url地址别名或者物理跳转地址。
ModelAndView
ModelAndView对象有两个作用:
作用一 设置转向地址,如下所示(这也是ModelAndView和ModelMap的主要区别)
ModelAndView view = new ModelAndView("path:ok");
作用二 用于传递控制方法处理结果数据到结果页面,也就是说我们把需要在结果页面上需要的数据放到ModelAndView对象中即可,他的作用类似于request对象的setAttribute方法的作用,用来在一个请求过程中传递处理的数据。通过以下方法向页面传递参数:
addObject(String key,Object value);
在页面上可以通过el变量方式$key或者bboss的一系列数据展示标签获取并展示ModelAndView中的数据。
作用介绍完了后,接下来介绍使用方法
ModelMap
ModelMap的实例是由bboss mvc框架自动创建并作为控制器方法参数传入,用户无需自己创建。
public String xxxxmethod(String someparam,ModelMap model){ //省略方法处理逻辑若干 //将数据放置到ModelMap对象model中,第二个参数可以是任何java类型 model.addAttribute("key",someparam); ...... //返回跳转地址 return "path:handleok";}
ModelAndView
ModelAndView的实例是由用户手动创建的,这也是和ModelMap的一个区别。
public ModelAndView xxxxmethod(String someparam){ //省略方法处理逻辑若干 //构建ModelAndView实例,并设置跳转地址 ModelAndView view = new ModelAndView("path:handleok"); //将数据放置到ModelAndView对象view中,第二个参数可以是任何java类型 view.addObject("key",someparam); ...... //返回ModelAndView对象view return view;}
到此bboss mvc中ModelMap和ModelAndView两个对象的作用和使用方法介绍完毕
如下为我自己写的测试代码
@RequestMapping(value = "/demo",method = RequestMethod.GET) public ModelAndView getBusinessIdListByIp(@RequestParam("ip") String ip,@RequestParam("phoneId") String phoneId,Model model){ ModelAndView mav = new ModelAndView(); model.addAttribute("ip", ip); model.addAttribute("phoneId", phoneId); mav.addObject(model); mav.setViewName("user/mav"); return mav; } @RequestMapping(value = "/demo2",method = RequestMethod.GET) public ModelAndView getBusinessIdListByIp(){ return new ModelAndView("user/mav","key",new String("makeHappy")); }
- Spring框架中ModelAndView、Model、ModelMap区别
- SPRING框架中ModelAndView、Model、ModelMap区别【转】
- Spring框架中ModelAndView、Model、ModelMap的区别
- Spring框架中ModelAndView、Model、ModelMap的区别
- Spring框架中ModelAndView、Model、ModelMap的区别
- SpringMVC框架中ModelAndView、Model、ModelMap的区别与使用
- Spring中Model,ModelMap以及ModelAndView之间的区别
- SpringMVC中Model/ModelMap/ModelAndView
- SpringMVC 中Model、ModelMap和ModelAndView的区别和用法
- spring框架中的ModelMap和ModelAndView的区别
- springMVC Model ModelMap 和 ModelAndView的区别
- ModelAndView 和 Model ModelMap 返回值区别
- sringmvc 返回 Model,ModelMap, ModelAndView 区别
- springMVC Model、 ModelMap 和 ModelAndView的区别
- springMVC Model ModelMap 和 ModelAndView的区别
- springMVC Model ModelMap 和 ModelAndView的区别
- springmvc Model ModelMap 和 ModelAndView的区别
- springMVC Model、 ModelMap 和 ModelAndView的区别
- Gradle for Android 第三篇( 依赖管理 )
- 猎云早报:羽泉代言的借贷宝陷”受害者维权”风波,国盛金控3.75亿元收购趣店集团5%股权
- 资本寒冬?机器人产业迎来投资小阳春
- [FAQ13734]状态栏中的信号栏添加上下行标识
- 2016年Q1~Q3文章汇总
- SPRING框架中ModelAndView、Model、ModelMap区别【转】
- 票房拐点之后的影院并购,继续“小而频”还是大洗牌
- mysql 时间函数
- 基于CDH5.x 下面使用eclipse 操作hive 。使用java通过jdbc连接HIVESERVICE 创建表出现的问题及解决
- Unity Shader菲涅耳反射(Fresnel)
- 工业AR先锋Daqri寻求2亿美元投资
- 投资者要小心了!谷歌Pixel利润率与iPhone相当
- 满满都是套路!投资人十大常用“谎言”你都Get到了吗?
- 触动传媒总部人去楼空 上海多家出租车公司追讨欠款