SpringMVC的执行流程和组件说明

一、SpringMVC执行流程

1.用户请求发送到前端控制器DispatcherServlet

2.DispatcherServlet收到请求后调用处理器映射器HandlerMapping

3.处理器映射器根据请求URL找到对应的处理器,生成处理器对象和处理器拦截器(如果有则一并生成),一并返回给DispatcherServlet

4.DispatcherServlet通过处理器适配器HandlerAdapter调用具体的处理器Controller

5.执行处理器Controller(也叫做后端处理器)

6.Controller返回ModelAndView

7.HandlerAdapter将Controller的执行结果ModelAndView返回给DispatcherServlet

8.DispatcherServlet将ModelAndView传给视图解析器ViewReslover

9.ViewReslover解析后返回具体的View

10.DispatcherServlet对View进行渲染(即模型数据填充至视图中)

11.DispatcherServlet将渲染好的视图响应给用户

二、SpringMVC组件说明

1.DispatcherServlet:前端控制器

用户请求到达DispatcherServlet,它就相当于MVC模式中的C,DispatcherServlet是整个流程的控制中心,由它来调用其他组件处理用户的各种请求,DispatcherServlet的存在降低了其他组件的耦合度。

2.HandlerMapping:处理器映射器

HandlerMapping负责根据请求URL找到对应的处理器Handler,springMVCt提供了不同映射器实现不同的映射方式,如:xml配置文件,通过接口实现,注解实现

3.HandlerAdapter:处理器适配器

通过HandlerAdapter执行处理器,这是适配器模式的应用,通过扩展适配器可以对更多类型的处理器执行

4.ViewResolver:视图解析器

ViewResolver负责处理结果生成的View视图,首先根据逻辑视图名解析成物理视图名即具体的页面地址,再生成View视图对象,最后对View进行渲染,最后将处理结果通过页面展示给用户

5.Handler:处理器

Handler是相对于前端控制器的后端控制器,在dispatcherServlet的控制下处理用户的具体请求,由于Handler涉及到用户的具体业务请求,所以一般需要程序员开发Handler

6.View:视图

SpringMVC提供了很多View视图类型的支持,但最常用的就是jsp。

猜你喜欢

转载自blog.csdn.net/haiyangzhou01/article/details/80051213