ModelMap和ModelAndView的作用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
首先介绍ModelMap和ModelAndView的作用
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框架自动创建并作为控制器方法参数传入,用户无需自己创建。
Java代码
1.public String (xxxxmethod String someparam,ModelMap model)
2.{
3.//省略方法处理逻辑若干
4.//将数据放置到ModelMap对象model中,第二个参数可以是任何
java类型
5. model.addAttribute("key",someparam);
6. ......
7.//返回跳转地址
8.return"path:handleok";
9.}
Java代码
1.public String xxxxmethod(String someparam,ModelMap model)
2.{
3. //省略方法处理逻辑若干
4. //将数据放置到ModelMap对象model中,第二个参数可以是任何
java类型
5. model.addAttribute("key",someparam);
6. ......
7. //返回跳转地址
8. return "path:handleok";
9.}
ModelAndView
ModelAndView的实例是由用户手动创建的,这也是和ModelMap的一个区别。
Java代码
1.public ModelAndView xxxxmethod(String someparam)
2.{
// map.addAttribuite(Map map)
3.//省略方法处理逻辑若干
4.//构建ModelAndView实例,并设置跳转地址
5. ModelAndView view = new ModelAndView("path:handleok");
6. //ModelAndView views= new ModelAndView(new Redrict(String
url),ModelMap mapp)
7.
8.//将数据放置到ModelAndView对象view中,第二个参数可以是任
何java类型
9. view.addObject("key",someparam);
10. ......
11. //返回ModelAndView对象view
12. return view;
13.}。