SpringMvc运行原理

SpringMvc运行原理,总结一下便于后续回顾学习。

  1. 客户端发出请求到DispatchServlet(中央处理器);
  2. 由DispatchServlet控制器查询到一个或多个HandlerMapping(处理器映射器)(注1),通过请求HandlerMapping获取Handler(Controllet)(注2);
  3. 向DispatchServlet控制器返回映射到的Handler(Controller);
  4. 由DispatchServlet控制器请求HandlerAdapter(处理器适配器),准备执行对应的Handler;
  5. 通过HandlerAdapter(处理器适配器)执行对应的Handler;
  6. 向HandlerAdapter(处理器适配器)返回Handler执行结果ModelAndView;
  7. 由HandlerApadter(处理器适配器)向DispatchServlet控制器返回ModelAndView;
  8. 由DispatchServlet控制器通过视图名称找到ModelAndView指定的视图(注3);
  9. 向DispatchServlet控制器返回真正的视图对象;
  10. 由DispatchServlet控制器对返回的视图对象进行渲染;
  11. 向DisparchServlet控制器返回渲染后的视图;
  12. 向客户端响应请求。

注1:

    HandlerMapping(处理器映射器)一共有四种映射方式:

  • controller的name映射寻找;
  • URL映射来寻找(推荐使用);
  • controller的类名映射寻找;
  • 使用注解的映射方式寻找。

注2:

    在DispatchServlet(中央控制器)加载时,会对HandlerMapping初始化。

注3:

    这里的视图只是视图名称,不是真正的视图。


猜你喜欢

转载自blog.csdn.net/ibelievesmile/article/details/80407411