SpringMVC執行原理


先上一張原理圖

 

 

-- 序號為執行順序,實線箭頭為SpringMVC內部執行,虛線為用戶執行 --

開始理解流程

1、首先用戶發起請求,請求被DispatcherServlet攔截(在web.xml中配置)

 

2、攔截之后去尋找請求對應的映射器

(HandlerMapping為處理器映射。DispatcherServlet調用HandlerMapping,HandlerMapping根據請求url查找Handler。)

3、HandlerExecution表示具體的Handler。

其主要作用是根據url查找控制器並將解析后的信息返回給DispatcherServlet,前四步完成!

 

4、下面是5 6 7 8的步驟

 

(5)HandlerAdapter表示處理器適配器,其按照特定的規則(用戶寫的Controller)去執行Handler。

(6)Handler讓具體的Controller執行。

(7)Controller將具體的執行信息返回給HandlerAdapter,如ModelAndView。

(8)HandlerAdapter將視圖邏輯名或模型傳遞給DispatcherServlet。

5、下面是9 10 11的步驟

 

(9)DispatcherServlet調用視圖解析器(ViewResolver)來解析HandlerAdapter傳遞的邏輯視圖名。(獲得model and view 中的數據,解析視圖名字,拼接視圖路徑)

 

 

 (10)視圖解析器將解析的邏輯視圖名傳給DispatcherServlet。

(11)DispatcherServlet根據視圖解析器解析的視圖結果,調用具體的視圖。

 

6、最后一步,第12步返回View給用戶

 

流程大概可以分為三個部分

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM