SpringMVC工作原理

SpringMVC工作原理

  1. M:Model(完成業務邏輯 Service/dao/entity/)
  2. V:View(完成介面渲染 jsp/html)
  3. C:Controller(控制器->類似於CPU 接受請求->調用M->返回V)
  4. MVC工作原理圖

img

2、SpringMvc工作原理

  1. Spring和SpringMvc的關係:

    SpringMVC是一個MVC的開源框架,SpringMVC是Spring的一個後續產品,其實就是Spring在原有基礎上,又提供了web應用的MVC模組,可以簡單的把SpringMVC理解為是spring的一個模組(類似AOP,IOC這樣的模組),網路上經常會說SpringMVC和Spring無縫集成,其實SpringMVC就是Spring的一個子模組,所以根本不需要同spring進行整合。

  2. SpringMVC中的組件:

    • 前端控制器(DispatcherServlet):接收請求,響應結果,相當於電腦的CPU。

      處理器映射器(HandlerMapping):根據URL去查找處理器

      處理器(Handler):(需要程式設計師去寫程式碼處理邏輯的)

      處理器適配器(HandlerAdapter):會把處理器包裝成適配器,這樣就可以支援多種類型的處理器,類比筆記型電腦的適配器(適配器模式的應用)

      視圖解析器(ViewResovler):進行視圖解析,多返回的字元串,進行處理,可以解析成對應的頁面

SpringMvc工作原理圖

img

SpringMvc工作流程

第一步:用戶發起請求到前端控制器(DispatcherServlet)

第二步:前端控制器請求處理器映射器(HandlerMappering)去查找處理器(Handle):通過xml配置或者註解進行查找

第三步:找到以後處理器映射器(HandlerMappering)像前端控制器返回執行鏈(HandlerExecutionChain)

第四步:前端控制器(DispatcherServlet)調用處理器適配器(HandlerAdapter)去執行處理器(Handler)

第五步:處理器適配器去執行Handler

第六步:Handler執行完給處理器適配器返回ModelAndView

第七步:處理器適配器向前端控制器返回ModelAndView

第八步:前端控制器請求視圖解析器(ViewResolver)去進行視圖解析

第九步:視圖解析器像前端控制器返回View

第十步:前端控制器對視圖進行渲染

第十一步:前端控制器向用戶響應結果