1. 程式人生 > >SpringMVC執行的流程

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攔截器的執行流程想結合理解的更加清晰