SpringMVC工作流程

一、首先了解一下SpringMVC工作流程中各个工作组件

1、DispatcherServlet:前端控制器,也称“中央控制器”,提供SpringMVC的集中访问点,它是整个请求响应的控制中心,组件的调用由它统一调度。

2、HandlerMapping:处理器映射器,它的作用是解析请求链接,根据用户请求的URL映射到对应的后端处理器Handler。也就是找谁来处理请求,如果映射成功返回一个“HandlerExecutionChain”对象,虽知道用户请求的处理器,但是并不执行,而是将处理器告诉中央处理器。

3、HandlerAdapter:处理器适配器,它调用后端处理器中的方法,返回逻辑试图ModelAndView对象。

4、ViewResolver:视图解析器,将 ModelAndView 逻辑视图解析为具体的视图(如同JSP)。

5、Handler:后端处理器,对用户具体请求进行处理,也就是我们编写的 Controller 类。

 

二、SpringMVC工作流程

1、用户向服务端发送一次请求,这个请求会先到前端控制器DispatcherServlet(也叫中央控制器)。

2、DispatcherServlet接收到请求后会调用HandlerMapping处理器映射器。由此得知,该请求该由哪个Controller来处理(并未调用Controller,只是得知)。

3、DispatcherServlet调用HandlerAdapter处理器适配器,告诉处理器适配器应该要去执行哪个Controller。

4、HandlerAdapter处理器适配器去执行Controller并得到ModelAndView(数据和视图),并层层返回给DispatcherServlet。

5、DispatcherServlet将ModelAndView交给ViewReslover视图解析器解析,然后返回真正的视图。

6、DispatcherServlet将模型数据填充到视图中。

7、DispatcherServlet将结果响应给用户。

SpringMVC工作流程

流程图:

DispatcherServlet继承关系图:

 

posted @ 2020-09-12 13:26  ZhangHuaKe  阅读(1126)  评论(0)    收藏  举报