Model、ModelMap、ModelAndView的使用和区别
2019-05-22 06:28:35来源:博客园 阅读 ()
1、Model的使用
数据传递:Model是通过addAttribute方法向页面传递数据的;
数据获取:JSP页面可以通过el表达式或C标签库的方法获取数据;
return:return返回的是指定的页面路径;
1 /** 2 * Model是每一次请求可以自动创建 3 * @param model 4 * @return 5 */ 6 @RequestMapping("/test01") 7 public String test01(Model model){ 8 model.addAttribute("param_id", "01"); 9 model.addAttribute("param_name", "spring-mvc"); 10 return "test"; 11 }
2、ModelMap的使用
ModelMap的使用与Model相同,ModelMap是一种特殊的Model,一般来说,Model可以接收各种类型的数据,如果接收的数据是List,那么这个时候Model实际上是ModelMap。
3、ModelAndView的使用
数据传递:ModelAndView通过addObject方法向页面传递数据;
数据获取:JSP页面可以通过el表达式或C标签库的方法获取数据(与Model的获取方式相同);
return:return返回的是ModelAndView对象;
ModelAndView设置跳转地址有两个方式:
第一种:在new ModelAndView时添加地址参数,如:
ModelAndView mav = new ModelAndView("test");
第二种:使用ModelAndView的setViewname(String)方法去设置,如:
mav.setViewName("test");
1 /** 2 * ModelAndView需要我们自己创建 3 * 可以指定跳转地址 4 * @param model 5 * @return 6 */ 7 @RequestMapping("/test02") 8 public ModelAndView test02(){ 9 //第一种方法:在创建ModelAndView对象时,指定跳转地址 10 ModelAndView mav = new ModelAndView("test"); 11 //第二种方法:用方法setViewName,指定跳转地址 12 // mav.setViewName("test"); 13 mav.addObject("param_id", "02"); 14 mav.addObject("param_name", "ModelAndView"); 15 return mav; 16 }
4、Model与ModelAndView的区别
第一点:Model只是用来传输数据的,并不会进行业务的寻址。ModelAndView 却是可以进行业务寻址的;所以Model的返回值是url地址,而ModelAndView的返回值是ModelAndView对象;
第二点:Model是每一次请求可以自动创建,但是ModelAndView 是需要我们自己去new的。所以使用Model时Controller的参数是Model。
原文链接:https://www.cnblogs.com/xueqx/p/10886316.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:JDBC 编程
下一篇:Java度线程——生产消费问题
- @ModelAttribute 的使用 2020-04-20
- MyBatis 逆向工程——根据数据表自动生成model、xml映射文 2020-01-22
- JavaEE——JSP开发模式(model1) 2019-10-17
- ModelAndViewContainer、ModelMap、Model详细介绍【享学Spri 2019-09-02
- 从原理层面掌握@ModelAttribute的使用(核心原理篇)【一起 2019-08-16
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash