具体执行步骤:
1. 用户发起请求 给前端控制器(DispatcherServlet)
2 前端控制器根据请求去调用处理器映射器HandlerMapping(url查找Handle)
3 处理器映射器找到具体的处理器(controller或者handler),并返回给DispatcherServlet。
4 前端控制器去调用HandlerAdapter处理器适配器。
5 处理器适配器调用controller(后端控制器)
6 controller执行完成后将数据和视图返回给ModelAndView。
7适配器拿到ModelAndView后继续反馈给前端控制器。
8前端控制器将ModelAndView返回给视图解析器(ViewReslover)。
9ViewReslover将视图解析后返回给View
10前端控制器根据View进行视图渲染(将数据页面进行对应)
11最后前端控制响应用户。
概括:
(1) 客户端请求提交到 DispatcherServlet。
(2) 由 DispatcherServlet 控制器查询一个或多个 HandlerMapping,找到处理请求的 Controller。
(3) DispatcherServlet 将请求提交到 Controller。
(4)(5)调用业务处理和返回结果:Controller 调用业务逻辑处理后,返回 ModelAndView。
(6)(7)处理视图映射并返回模型: DispatcherServlet 查询一个或多个 ViewResoler 视图解析器, 找到 ModelAndView 指定的视图。
(8) Http 响应:视图负责将结果显示到客户端。