javascript
SpringMVC架构---SpringMVC学习笔记(一)
什么是SpringMVC?
springmvc是spring框架的一個模塊,springmvc和spring無需通過中間整合層進行整合。(struts2與Spring整合的時候需要借助單獨的jar包)
springmvc是一個基于mvc的web框架。
MVC在B/S系統下的應用
控制接收用戶請求的數據,委托給模型進行處理
模型通常是指業務邏輯
web中模型無法將數據直接在視圖上顯示,需要通過控制器完成。如果在C/S應用中模型是可以將數據在視圖中展示的。
通過視圖展示給用戶要的數據或處理結果。
SpringMVC架構
架構圖1:
架構圖2:
架構主要流程解釋:
Spring MVC中前端的控制器就是DispatcherServlet這個Servlet來掌管著用戶的請求及最后的系統回應。這個DispatcherServlet同具體的業務邏輯一點都不著邊,而是把所有的事情委派給控制器去做(Controller),當然DispatcherServlet是知道該把當前的事情交個那個控制器去做;然后當控制器把事情都做完了后,這個時候輪到視圖(View)上場了,簡單的理解好比我們做PPT,那么這里的視圖好比PPT里面的模板,它可以把數據以不同的展現形式交給客戶,可以是jsp、xml、json等等。
架構具體運作流程:
第一步:發起請求到前端控制器(DispatcherServlet)
第二步:前端控制器請求HandlerMapping查找 Handler
可以根據xml配置、注解進行查找
第三步:處理器映射器HandlerMapping向前端控制器返回Handler
第四步:前端控制器調用處理器適配器去執行Handler
第五步:處理器適配器去執行Handler
第六步:Handler執行完成給適配器返回ModelAndView
第七步:處理器適配器向前端控制器返回ModelAndView
ModelAndView是springmvc框架的一個底層對象,包括 Model和view
第八步:前端控制器請求視圖解析器去進行視圖解析
根據邏輯視圖名解析成真正的視圖(jsp)
第九步:視圖解析器向前端控制器返回View
第十步:前端控制器進行視圖渲染
視圖渲染將模型數據(在ModelAndView對象中)填充到request域
第十一步:前端控制器向用戶響應結果
組件說明:
作用接收請求,響應結果,相當于轉發器,中央處理器。
有了DispatcherServlet減少了其它組件之間的耦合度。
作用:根據請求的url查找Handler
作用:按照特定規則(HandlerAdapter要求的規則)去執行Handler
注意:編寫Handler時按照HandlerAdapter的要求去做,這樣適配器才可以去正確執行Handler
作用:進行視圖解析,根據邏輯視圖名解析成真正的視圖(view)
View是一個接口,實現類支持不同的View類型(jsp、freemarker、pdf…)
總結
以上是生活随笔為你收集整理的SpringMVC架构---SpringMVC学习笔记(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring与mybatis整合---M
- 下一篇: 入门Demo---SpringMVC学习