12-SpringMVC的执行流程

   日期:2020-11-15     浏览:91    评论:0    
核心提示:上一篇:11-SpringMVC核心之拦截器的应用实践用户登录验证https://blog.csdn.net/fsjwin/article/details/1096363251. SpringMVC的执行流程先给出执行流程的示意图:浏览器发出请求到达中央处理器(2-3步)DispatchServlet接收到请求后,把请求交给处理器映射器,处理器映射器是springmvc框架中的一种对象,框架把视线了HandlerMapping接口的类均叫做处理器映射器(在框架中是多个)。处理器映射器的作用:根

上一篇:11-SpringMVC核心之拦截器的应用实践用户登录验证https://blog.csdn.net/fsjwin/article/details/109636325

1. SpringMVC的执行流程

先给出执行流程的示意图:

  1. 浏览器发出请求到达中央处理器
  2. (2-3步)DispatchServlet接收到请求后,把请求交给处理器映射器,处理器映射器是springmvc框架中的一种对象,框架把视线了HandlerMapping接口的类均叫做处理器映射器(在框架中是多个)。
    处理器映射器的作用:根据请求从springmvc容器中获取处理器对象即:
    MyController myController = ct.getBean(“xxx.do”);
    处理器映射器把获得的controller对象放在执行器执行链当中,这也是一个类:HandlerExecutionChain.java。

HandlerMapping.java:

@Nullable
HandlerExecutionChain getHandler(HttpServletRequest var1) throws Exception;

类实现类很多。现在我们使用注解了之后就方便了很多。

HandlerExecutionChain.java:

//处理器(MyController)
private final Object handler;

//拦截器
@Nullable
private HandlerInterceptor[] interceptors;
  1. (4-7步)中央处理把HandlerExecutionChain交给处理器适配器(多个),适配器是springmvc中的组件,只要实现了HandlerAdapter接口的均叫处理器适配器。会调用handle方法,具体实现就是myController中的相应方法。得到ModelAndView对象(这个ModelAndView重新回到DispatchServlet中央调度器手中)

    HandlerAdapter的实现类:(和映射器一一对应)


4. (8-9) 视图解析器,使用前后缀配成实体,使用View类来表示

比如:RedirectView 对象代表的就是的就是redirect:/EEB-INF/view/first.jsp这里的视图。


然后把view对象返回给中央调度器DispatchServlet

  1. DispatchServlet把view对象,调用view对象自己的方法相应给页面。

2. DispatchServlet中的重要节点

DispatchServlet中的重要节点:
的到执行链:

调用适配器:

3. 总结

这个在面试过程中用的多。开发中实际应用不大。
各个器君合DispatchServlet中央调度器交互,各自之间没有耦合!
建议源码有余力详细研究!

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服