springmvc是當前最為優秀的一款mvc的框架,自從springmvc 2.5版本發布之後,由於支援了註解配置,大大的提公升了易用性。springmvc3.0也逐漸優化完善,在市場佔比超越了struts2。成為一款主流的web層框架。
1.springmvc使用簡單,學習成本低。面向方法。學習難度要比struts2低,精簡。
2.springmvc很容易就可以寫出優秀效能,執行效率的程式,struts2要處處小心才可以寫出執行效率高的程式。相對來說給為上手。
3.springmvc的靈活是你無法想象的,spring框架的擴充套件性是受大眾認為的,springmvc當然也不會落後,不會因為使用了mvc框架而影響程式的執行。
dispatcherservlet --- 前置控制器
handleradapter介面 --- 處理請求的對映
annotationmethodhandleradapter類,通過註解,把乙個url對映到controller類的方法上。
controller介面 --- 控制器
由於在開發中使用了@controller註解,新增了@controller註解的類就可以實現控制器的功能。
handlerinterceptor介面 --- ***
viewresolver介面的實現類
urlbasedviewresolver類 通過配置檔案,把乙個檢視名交給到乙個view來處理
internalresourceviewresolver類,比上面的類,加入了jstl的支援
view介面
jstlview類
localresolver介面
handlerexceptionresolver介面 --- 異常處理
modelandview類
1.客戶端通過url來傳送請求
2.核心控制器dispatcher servlet接收到請求,通過系統或自定義的對映器配置找到對應的handler,並將url對映的控制器controller返回給核心控制器。
3.通過核心控制器找到系統或缺省的介面卡。
4.由找到的介面卡,呼叫實現對應介面的處理器,並將結果返回給介面卡,結果中包含資料模型和檢視物件,再由介面卡返回給核心控制器
6.核心控制器將結果返回解析給客戶端。
對於執行流程中的對映器,視**析器的作用:對映器負責將前端請求的url對映到配置的處理器,視**析器將最終的結果進行解析,但是中間會經過一層介面卡,因為springmvc為業務處理器提供了多種介面實現(實現了controller介面),而介面卡就是用根據處理器實現了什麼介面,最終選擇與已經註冊好的不同型別的handler adapter進行匹配,並最終執行。
spring mvc工作原理解析
springmvc各個元件間工作路線圖 springmvc實現controller的三種方式 實現controller介面 實現httprequesthandler介面 使用 controller註解 各個元件解析 1.前端控制器 dispacterservlet 由spring提供,不需要程式設計...
springmvc框架原理解析
框架執行流程 step1 使用者發起請求到前端控制器 step3 處理器對映器向前端控制器返回handler step4 前端控制器呼叫處理器介面卡去執行handler step5 處理器介面卡去執行handler step6 handler執行完給介面卡返回modelandview step7 處...
SpringMVC原理 解析請求引數(原始碼分析)
在使用springmvc的時候,我們經常編寫controller層的介面,並使用一些註解傳遞一些引數,那麼這些引數是怎麼封裝進我們的請求的呢?springmvc是怎麼解析這些引數的呢?本文主要通過原始碼分析springmvc解析請求引數的全過程。編寫乙個controller類,裡面寫上乙個介面方法 ...