ModelAndView

原创 2018年04月16日 17:45:08
Spring Web MVC 处理Http请求的大致过程:
一旦Http请求到来,DispatcherSevlet将负责将请求分发。DispatcherServlet可以认为是Spring提供的前端控制器,所有的请求都有经过它来统一分发。
在DispatcherServlet将请求分发给Spring Controller之前,需要借助于Spring提供的HandlerMapping定位到具体的Controller。HandlerMapping是这样一种对象,它能够完成客户请求到Controller之间的映射。在Struts中,这种映射是通过struts-config.xml文件完成的。其中,Spring为Controller接口提供了若干实现,例如Spring默认使用的BeanNameUrlHandlerMapping。还有,SimpleUrlHandlerMapping,CommonsPathMapHandlerMapping。
Spring Controller将处理来自DispatcherServlet的请求。Spring的Controller类似于struts的Action,能够接受HttpServletRequest和HttpServletResponse。Spring为Controller接口提供了若干实现类,位于org.springframework.web.servlet.mvc包中。由于Controller需要为并发用户处理上述请求,因此实现Controller接口时,必须保证线程安全并且可重用。Controller将处理客户请求,这和Struts Action 扮演的角色是一致的。
一旦Controller处理完客户请求,则返回ModelAndView对象给DispatcherServlet前端控制器。ModelAndView中包含了模型(Model)和视图(View)。从宏观角度考虑,DispatcherServlet是整个Web应用的控制器;从微观角度考虑,Controller是单个Http请求处理过程中的控制器,而ModelAndView是Http请求过程中返回的模型和视图。前端控制器返回的视图可以是视图的逻辑名,或者实现了View接口的对象。View对象能够渲染客户响应结果。其中,ModelAndView中的模型能够供渲染View时使用。借助于Map对象能够存储模型。
如果ModelAndView返回的视图只是逻辑名,则需要借助Spring提供的视图解析器(ViewResoler)在Web应用中查找View对象,从而将响应结果渲染给客户。
DispatcherServlet将View对象渲染出的结果返回个客户。
ModelAndView modelAndView = new ModelAndView("bugInfo/index");
return modelAndView;

负责生成ModelAndView之后跳转


ModelAndView详细解析

当控制器处理完请求时,通常会将包含视图名称或视图对象以及一些模型属性的ModelAndView对象返回到DispatcherServlet。 因此,经常需要在控制器中构造ModelAndView对象...
  • wojiaowo11111
  • wojiaowo11111
  • 2016-06-01 17:27:10
  • 1288

SpringMVC中ModelAndView跳转错误的问题

这是一个粗心造成的 问题, 问题描述,我请求的url是  http://localhost8080/项目名/resource/getAllResource 在controller中配置的返回是 r...
  • wzxtc2008
  • wzxtc2008
  • 2015-05-11 18:57:24
  • 1171

ModelAndView的使用方法

当控制器处理完请求时,通常会将包含视图名称或视图对象以及一些模型属性的ModelAndView对象返回到DispatcherServlet。 因此,经常需要在控制器中构造ModelAndView...
  • qq287151402
  • qq287151402
  • 2017-02-27 10:28:26
  • 599

SpringMVC的ModelAndView传值

SpringMVC提供的ModelAndView可以很方便的将后台的值传到前台,前台页面直接使用EL表达式进行获取,获取方式: 1. @RequestMapping(value = "...
  • carse
  • carse
  • 2017-03-13 16:13:30
  • 717

SpringMVC源码分析(3):分析ModelAndView的形成过程

首先,我们还是从 DispatcherServlet .doDispatch( HttpServletRequest request, HttpServletResponse response) th...
  • u010233323
  • u010233323
  • 2016-09-12 18:04:59
  • 900

ModelAndView理解

正常的返回 一个hello 通过一个那个常用的视图解析器声称 /XX/hello.jsp这个页面,返回ModelAndView 可以添点东西,初始化的时候也确定名字了 ModelAndView ...
  • chengzhaoan2010
  • chengzhaoan2010
  • 2017-02-03 16:26:12
  • 1609

return new ModelAndView("redirect:/login.jsp");

return new ModelAndView("redirect:/login.jsp");
  • u012726702
  • u012726702
  • 2015-07-18 11:46:21
  • 2862

ModelAndView返回json类型数据

ModelAndView返回json类型数据一
  • xiaoxiaoling22
  • xiaoxiaoling22
  • 2016-09-02 19:04:02
  • 3038

ModelAndView的详细介绍

package com.sxt.web; import org.springframework.stereotype.Controller; import org.springframework.w...
  • mmayanfa
  • mmayanfa
  • 2014-08-16 10:32:48
  • 965

springmvc Model和ModelAndView的区别

Model只是用来传输数据的,并不会进行业务的寻址。 ModelAndView却是可以进行业务寻址的,就是设置对应的要请求的静态文件,这里的静态文件指的是类似jsp的文件。 两者还有一个最大的区别...
  • feicongcong
  • feicongcong
  • 2017-02-10 16:37:51
  • 2721
收藏助手
不良信息举报
您举报文章:ModelAndView
举报原因:
原因补充:

(最多只允许输入30个字)