SpringMVC工作原理
SpringMVC工作原理
2、SpringMvc工作原理
Spring和SpringMvc的關係:
SpringMVC是一個MVC的開源框架,SpringMVC是Spring的一個後續產品,其實就是Spring在原有基礎上,又提供了web應用的MVC模組,可以簡單的把SpringMVC理解為是spring的一個模組(類似AOP,IOC這樣的模組),網路上經常會說SpringMVC和Spring無縫集成,其實SpringMVC就是Spring的一個子模組,所以根本不需要同spring進行整合。
SpringMVC中的組件:
前端控制器(DispatcherServlet):接收請求,響應結果,相當於電腦的CPU。
處理器映射器(HandlerMapping):根據URL去查找處理器
處理器(Handler):(需要程式設計師去寫程式碼處理邏輯的)
處理器適配器(HandlerAdapter):會把處理器包裝成適配器,這樣就可以支援多種類型的處理器,類比筆記型電腦的適配器(適配器模式的應用)
視圖解析器(ViewResovler):進行視圖解析,多返回的字元串,進行處理,可以解析成對應的頁面
SpringMvc工作原理圖
SpringMvc工作流程
第一步:用戶發起請求到前端控制器(DispatcherServlet)
第二步:前端控制器請求處理器映射器(HandlerMappering)去查找處理器(Handle):通過xml配置或者註解進行查找
第三步:找到以後處理器映射器(HandlerMappering)像前端控制器返回執行鏈(HandlerExecutionChain)
第四步:前端控制器(DispatcherServlet)調用處理器適配器(HandlerAdapter)去執行處理器(Handler)
第五步:處理器適配器去執行Handler
第六步:Handler執行完給處理器適配器返回ModelAndView
第七步:處理器適配器向前端控制器返回ModelAndView
第八步:前端控制器請求視圖解析器(ViewResolver)去進行視圖解析
第九步:視圖解析器像前端控制器返回View
第十步:前端控制器對視圖進行渲染
第十一步:前端控制器向用戶響應結果