SpringMVC的執行流程



 

  • 一個請求匹配前端控制器 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。

  一般情況下需要通過頁面標簽或頁面模版技術將模型數據通過頁面展示給用戶,需要由程序員根據業務需求開發具體的頁面。


免責聲明!

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



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