配置量小、開發效率高、與spring 框架天生結合、無框架兼容問題,安全性高spring
2.處理請求流程簡述設計模式
(此圖來自網絡,侵刪)安全
3.spring mvc 架構網絡
(此圖來自網絡,侵刪)架構
核心架構的具體流程步驟:mvc
一、首先用戶向DispatcherServlet發送請求。但DispatcherServlet並不會本身處理,它會委託其餘的解析器進行處理,它只是做爲統一訪問點,進行全局的流程控制
app
二、DispatcherServlet 將用戶請求委託HandlerMapping 處理,由HandlerMapping來找到要處理的對象,即Handler,返回給DispatcherServlet。??? HandlerMapping將會把請求映射爲HandlerExecutionChain(它包含一個handler處理器(頁面控制器)對象,多個HandlerInterceptor攔截器)對象,經過這種策略模式,很容易添加新的映射策略
框架
三、DispatcherServlet 從HandlerMapping獲得要處理的對象後,再委託HandlerAdpater尋找匹配要具體處理的方法(HandlerMapping返回的處理對象內部的方法),由具體處理的方法返回ModelAndView對象給DispatchServlet。HandlerAdapter將會將處理器包裝爲適配器,從而支持多種類型的處理器,即適配器設計模式的應用,從而很容易支持不少類型的處理器。spa
四、調用處理器相關功能處理方法,返回ModelAndView給HandlerAdapter。HandlerAdapter將會根據匹配的結果調用真正的處理器的功能處理方法,完成功能處理;並返回一個ModelAndView對象(包含模型數據、邏輯視圖名)設計
五、DispatcherServlet獲得ModelAndView後交由ViewResolver來進行視圖解析。由ViewResolver將邏輯視圖名解析爲具體的View
六、最後由View根據Model即模型數據進行渲染,返回給DispatcherServlet
七、DispatcherServlet將響應交給用戶,完成整個流程