Spring MVC的执行流程
一、名词解释
1、前端控制器(DispatcherServlet)
- 接收请求,响应结果,相当于转发器,中央处理器
2、处理器映射器(HandlerMapping)
- 根据请求的url查找Handler(处理器/Controller)
- 可以通过XML和注解方式实现映射。
3、处理器适配器(HandlerAdapter)
- 按照HandlerAdapter所要求的规则执行Handler
4、处理器Handler(也称之为Controller)
- 接收用户请求信息,调用业务方法处理请求,也称之为后端控制器
5、视图解析器(ViewResolver)
- 进行视图解析,把逻辑视图名解析成真正的物理视图
6、视图(View)
- 把数据展现给用户的页面
二、执行流程
1. 用户发送请求到前端控制器DispatcherServlet
2. DispatcherServlet收到请求调用处理器映射器HandlerMapping
3. HandlerMapping通过注解或XML找到具体的处理器,并生成执行链返回给DispatcherServlet。
4. DispatcherServlet调用处理器适配器HandlerAdapter
5. HandlerAdapter经过适配调用具体的处理器(Controller)
6. Controller执行完成返回ModelAndView对象
7. HandlerAdapter将Controller执行结果ModelAndView返回给DispatcherServlet
8. DispatcherServlet将ModelAndView传给视图解析器ViewReslover
9. ViewReslover解析后返回具体的视图View
10. DispatcherServlet根据View进行渲染视图
11. DispatcherServlet将页面响应给用户