一:客戶端向服務器發送請求,服務器接收
如果請求匹配前端服務器DispatcherServlet的請求路徑(在web.xml種指定),web容器將該請求轉交給dispatcherServlet處理
二:DispatcherServlet對請求路徑(URL、HTTP方法、請求報頭文、請求參數、Cookie等)進行解析,得到請求資源標識符
(比如我們發送一個url如下的請求http://localhost:8080/SpringMVC/hello.action,就會得到hello.action)
然后根據url調用處理器映射器(HandlerMapping)獲得該handler的所有對象(包含handler處理器對象和多個攔截器)
最后以HandlerExecutionChain(['hændlə] [,eksi'kju:ʃən] [:tʃein])對象的形式返回
三:dispatcherSerlet獲得上面返回的handler對象,把handler封裝成適配器,以適配器接口調用處理器的功能方法(先執行攔截器的preHandler方法)
返回ModleAndView(包含視圖邏輯名和模型數據信息)
四:dispatcherServlet借助ViewResolver完成邏輯視圖名到真實對象的解析
五:dispatcher得到視圖對象View,使用它對模型數據進行渲染
六:客戶端得到響應(可能是HTML頁面、XML、JSON串、PDF……)