SpringMvc執行原理
1.DispatcherServlet
表示前端控制器 是整個SpringMvc的控制中心 用戶發出請求 DispatcherServlet接受請求並攔截
假設請求的url //localhost:8080/SpringMVC/hello
url拆分成三部分
//localhost:8080 伺服器域名
SpringMVC部署在伺服器上的web站點
hello表示控制器
url表示為 請求位於伺服器localhost:8080上的SpringMVC站點的hello控制器
2.HandlerMapping
(處理器映射器) DispatcherServlet
調用HandlerMapping
HandlerMapping根據url查找Handler
3.HandlerExecution
表示具體的Handler 根據url查詢控制器
4.HandlerExecution
將解析後的資訊傳給DispatcherServlet
5.HandlerAdapter
表示處理器適配器 按照特定的規則去執行handler
6.Handler
讓具體的controller執行
7.Controller
返回具體的資訊給HandlerAdapter
如ModelAndView
8.HandlerAdapter
將視圖邏輯名或者模型傳遞給DispatcherServlet
9.DispatcherServlet
調用viewResolver
(視圖解析器)來解析HandlerAdapter
傳遞的視圖
10.viewResolver
將解析的視圖名稱傳遞給DispatcherServlet
11.DispatcherServlet
根據解析的視圖結果 調用具體的視圖
12.最後呈現在電腦上給用戶看