一、SpringMVC 流程
- 用户发送请求至前端控制器 DispatcherServlet。
- DispatcherServlet 收到请求调用HandlerMapping 处理器映射器。
- 处理器映射器找到具体的处理器(可以根据 xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给 DispatcherServlet。
- DispatcherServlet 调用 HandlerAdapter 处理器适配器。
- HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。
- Controller 执行完成返回 ModelAndView。
- HandlerAdapter 将 controller 执行结果 ModelAndView 返回给 DispatcherServlet。
- DispatcherServlet 将 ModelAndView 传给 ViewReslover 视图解析器。
- ViewReslover解析后返回具体 View。
- DispatcherServlet 根据 View 进行渲染视图(即将模型数据填充至视图中)。
- DispatcherServlet 响应用户。
二、SpringMVC 工作原理
- 客户端发送请求到 DispatcherServlet 。
- DispatcherServlet 查询 handlerMapping找到处理请求的 Controller 。
- Controller 调用业务逻辑后,返回 ModelAndView。
- DispatcherServlet 查询 ModelAndView,找到指定视图。
- 视图将结果返回到客户端。