標籤:包括 結果 視圖解析器 處理 流程 渲染 執行流程 產生 就是
一個請求匹配前端控制器 DispatcherServlet 的請求映射路徑(在 web.xml中指定), WEB 容器將該請求轉交給 DispatcherServlet 處理
DispatcherServlet 接收到請求後, 將根據 請求資訊 交給 處理器映射器 (HandlerMapping)
HandlerMapping 根據使用者的url請求 尋找匹配該url的 Handler,並返回一個執行鏈
DispatcherServlet 再請求 處理器適配器(HandlerAdapter) 調用相應的 Handler 進行處理並返回 ModelAndView 給 DispatcherServlet
DispatcherServlet 將 ModelAndView 請求 ViewReslover(視圖解析器)解析,返回具體 View
DispatcherServlet 對 View 進行渲染視圖(即將模型資料填充至視圖中)
DispatcherServlet 將頁面響應給使用者
組件說明:
DispatcherServlet:前端控制器
使用者請求到達前端控制器,它就相當於mvc模式中的c,dispatcherServlet是整個流程式控制制的中心,
由它調用其它組件處理使用者的請求,dispatcherServlet的存在降低了組件之間的耦合性。
HandlerMapping:處理器映射器
HandlerMapping負責根據使用者請求url找到Handler即處理器,springmvc提供了不同的映射器實現不同的映射方式,
例如:設定檔方式,實現介面方式,註解方式等。
Handler:處理器
Handler 是繼DispatcherServlet前端控制器的後端控制器,在DispatcherServlet的控制下Handler對具體的使用者請求進行處理。
由於Handler涉及到具體的使用者業務請求,所以一般情況需要程式員根據業務需求開發Handler。
HandlAdapter:處理器適配器
通過HandlerAdapter對處理器進行執行,這是適配器模式的應用,通過擴充適配器可以對更多類型的處理器進行執行。
ViewResolver:視圖解析器
View Resolver負責將處理結果產生View視圖,View Resolver首先根據邏輯視圖名解析成物理視圖名即具體的頁面地址,
再產生View視圖對象,最後對View進行渲染將處理結果通過頁面展示給使用者。
View:視圖
springmvc架構提供了很多的View檢視類型的支援,包括:jstlView、freemarkerView、pdfView等。我們最常用的視圖就是jsp。
一般情況下需要通過頁面標籤或頁面模版技術將模型資料通過頁面展示給使用者,需要由程式員根據業務需求開發具體的頁面。
SpringMVC的執行流程