Spring Mvc的执行流程
**
Spring Mvc的执行流程图
**
- 用户向DispatcherServlet(前端控制器)发送请求
- DispatcherServlet(前端控制器)请求HandlerMapping(处理器映射器)获取Handler Execution Chain 处理器执行链
- HandlerMapping(处理器映射器)对用户请求的url进行解析,找到对应的处理器,生成处理器对象以及处理器拦截器(若存在),返回给 DispatcherServlet(前端控制器)
- DispatcherServlet(前端控制器)请求HandlerAdapter(处理器适配器)执行处理器执行链
- HandlerAdapter(处理器适配器)根据处理器执行链调用处理器
- Controller(后端控制器)执行后返回ModelAndView到HandlerAdapter(处理器适配器)
- HandlerAdapter(处理器适配器)将Controller的执行结果ModelAndView返回到DispatcherServlet(前端控制器)
- DispatcherServlet(前端控制器)调用ViewReslover(视图解析器)对ModelAndView进行解析
- ViewReslover(视图解析器)将ModelAndView的解析结果View返回到 DispatcherServlet(前端控制器)
- DispatcherServlet(前端控制器)将Model数据填充到View 中,对View进行渲染
- DispatcherServlet(前端控制器)响应用户请求,并将渲染完成后的视图返回给用户