Spring mvc的執行過程大致如下:
1)所有請求都被DispatcherServlet控制器截獲。
2)攔截的請求去HandlerMapping尋找對應的Handler映射對象,得到請求對應的Handler對象。
3)將獲取的Handler對象和請求對應的攔截器作為輸入參數,封裝成HandlerExectionChain對象,返回給DispatcherServlet控制器。
4)將HandlerExecutionChain對象作為輸入參數,到handlerAdapters集合中查找對應的HandlerAdapter對象。
5)以HandlerExectionChain對象為參數調用HandlerAdapter對象的handle方法,執行後將ModelAndView對象返回給DispatcherServlet控制器。
6)從viewResolvers集合中找到相應的View對象,並將其返回給DispatcherServlet控制器。
7)將視圖視圖渲染成特定的文件格式,並將其返回給客戶端。
視圖視圖渲染
呈現特定的源代碼
視圖的類型如下所示(ctrl+h可以查看該類的所有子類)。