SpringMVC工作流程
SpringMVC工作流程
1.组件说明
- DispatcherServlet:前端控制器,也称为中央控制器,它是整个请求响应的控制中心,组件的调用由它统一调度。
- HandlerMapping:处理器映射器,它根据用户访问的 URL 映射到对应的后端处理器 Handler。也就是说它知道处理用户请求的后端处理器,但是它并不执行后端处理器,而是将处理器告诉给中央处理器。
- HandlerAdapter:处理器适配器,它调用后端处理器中的方法,返回逻辑视图 ModelAndView 对象。
- ViewResolver:视图解析器,将 ModelAndView 逻辑视图解析为具体的视图(如 JSP)。
- Handler:后端处理器,对用户具体请求进行处理,也就是我们编写的 Controller 类。
2.步骤说明
-
用户发出的请求都由DispatcherServlet接收拦截.
-
DispatcherServlet接收到请求后会调用HandlerMapping 处理器映射器。由url得知,该请求该由哪个Controller来处理(并未调用Controller,只是得知)
-
DispatcherServlet调用HandlerAdapter处理器适配器,找到后端控制器Controller执行,调用业务层获取返回的 ModelAndView
-
ModelAndView 返回给DispatcherServlet
-
DispatcherServlet将ModelAndView交给ViewReslover视图解析器解析,然后返回真正的视图。
-
DispatcherServlet将模型数据填充到视图中
-
DispatcherServlet将结果响应给用户