SpringMVC架构原理(运行流程)

架构的大致图

1、 用户发送请求至前端控制器DispatcherServlet

2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。

3、 处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。

4、 DispatcherServlet通过HandlerAdapter处理器适配器调用处理器

5、 执行处理器(Controller,也叫后端控制器)。

6、 Controller执行完成返回ModelAndView

7、 HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet

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

9、 ViewReslover解析后返回具体View

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

11、 DispatcherServlet响应用户


SpringMVC架构原理(运行流程)

个人理解

1.客户端发送请求到前端控制器,前端控制器在发送Handler给处理映射器。
2.处理映射器里有相当于键值对,根据发送来的Handler来判断应该什么函数来处理这个请求。
3.在到过滤器,如果不满足过滤器的条件在这里就被踢出。满足就到前端控制器。
4.前端控制器在发送Handler请求到处理器适配器,根据不同的处理器适配器,来返回一个ModelAndView。
5.在把返回的ModelAndView发送给前端控制器,前端控制器在把这个ModelAndView发送给视图解析器,进行解析。
6.解析完成返回view。之后前端控制器就去渲染页面。最后把渲染的页面和返回的数据给客户端。