SpringMVC运行的流程

请求传过来 先走到springDispatcherServlet的Url-pattern
1、SpringMVC中是否存在对应的映射------2.不存在---3.是否配置(mvc:default-servlet-handler/)-----4.没有--5.控制台报No mapping found for HTTP request with URI[/XX/XX]in DispatcherServlet ---6.跳转到404界面


倘若在步骤③中配置了----则调到目标资源


1、SpringMVC中是否存在对应的映射------2.存在---3.由HandleMapping获取HandleExecutionChain对象---4.获取HandleAdpter对象---5.调用拦截器的preHandle方法----6.调用目标Handler的目标方法得到ModelAndView对象---7.调用拦截器的postHandle方法----8.是否存在异常---不存在异常-----由viewResolver组件根据ModelAndView对象得到实际的View----渲染视图----在调用拦截器的afterCompletion方法


倘若在第八步中存在异常 -----由HandleExceptionResolver组件处理异常得到新的ModelAndView对象-----由viewResolver组件根据ModelAndView对象得到实际的View----渲染视图----在调用拦截器的afterCompletion方法


流程中所涉及到拦截器建议和springmvc拦截器的运行流程想结合理解的更加清晰



猜你喜欢

转载自www.cnblogs.com/itcores/p/9932295.html
今日推荐