1. 程式人生 > >SpringMVC學習筆記(一)——SpringMVC架構

SpringMVC學習筆記(一)——SpringMVC架構

部落格原始碼下載:戳我一下

一、SpringMVC是什麼

springmvcspring框架的一個模組,springmvcspring無需通過中間整合層進行整合。
springmvc是一個基於mvc的web框架。
這裡寫圖片描述

二、mvc在b/s系統 下的應用

mvc是一個設計模式,mvc在b/s系統 下的應用:
這裡寫圖片描述
1、使用者發起request請求至控制器(Controller),控制接收使用者請求的資料,委託給模型進行處理
2、控制器通過模型(Model)處理資料並得到處理結果,模型通常是指業務邏輯
3、模型處理結果返回給控制器
4、控制器將模型資料在檢視(View)中展示,web中模型無法將資料直接在檢視上顯示,需要通過控制器完成。如果在C/S應用中模型是可以將資料在檢視中展示的。
5、控制器將檢視response

響應給使用者,通過檢視展示給使用者要的資料或處理結果。

三、SpringMVC框架

這裡寫圖片描述
第一步:發起請求到前端控制器(DispatcherServlet)
第二步:前端控制器請求HandlerMapping查詢 Handler,可以根據xml配置、註解進行查詢
第三步:處理器對映器HandlerMapping向前端控制器返回Handler
第四步:前端控制器呼叫處理器介面卡去執行Handler
第五步:處理器介面卡去執行Handler
第六步:Handler執行完成給介面卡返回ModelAndView
第七步:處理器介面卡向前端控制器返回ModelAndViewModelAndView

springmvc框架的一個底層物件,包括ModelView
第八步:前端控制器請求檢視解析器去進行檢視解析,根據邏輯檢視名解析成真正的檢視(jsp)
第九步:檢視解析器向前端控制器返回View
第十步:前端控制器進行檢視渲染,檢視渲染將模型資料(在ModelAndView物件中)填充到request
第十一步:前端控制器向用戶響應結果

四、元件說明

1、前端控制器DispatcherServlet(不需要程式設計師開發)
作用:接收請求,響應結果,相當於轉發器,中央處理器。
有了DispatcherServlet減少了其它元件之間的耦合度。

2、處理器對映器HandlerMapping(

不需要程式設計師開發)
作用:根據請求的url查詢Handler

3、處理器介面卡HandlerAdapter
作用:按照特定規則(HandlerAdapter要求的規則)去執行Handler

4、處理器Handler(需要程式設計師開發)
注意:編寫Handler時按照HandlerAdapter的要求去做,這樣介面卡才可以去正確執行Handler

5、檢視解析器View resolver(不需要程式設計師開發)
作用:進行檢視解析,根據邏輯檢視名解析成真正的檢視

6、檢視View(需要程式設計師開發jsp)
View是一個介面,實現類支援不同的View型別(jsp、freemarker、pdf...