springMVC簡介
- 大部分java應用都是web應用,展現層是web應用最爲重要的部分。Spring爲展現層提供了一個優秀的web框架SpnngMVC。 和衆多其他web框架一樣, 它基於MVC的設計理念,此外,它採用了鬆散耦合可插拔組件結構,比其他MVC框架更具擴展性和靈活性.
- SpringMVC通過一套MVC註解,讓POJO成爲處理請求的控制器,無需實現任何接口,同時,SpringMVC還支持REST風格的URL請求。
- 此外,SpringMVC在數據綁定、視圖解析、本地化處理及靜態資源處理上都有許多不俗的表現。它在框架設計、擴展性、靈活性等方面全面超越了Struts、WebWork等MVC框架,從原來的追趕者一躍成爲MVC的領跑者。
- SpringMVC框架圍繞DispatcherServlet這個核心展開,DispatcherServlet是SpringMVC框架的總導演、總策劃,它負責截獲請求並將其分派給相應的處理器處理。
Springmvc 是Web層提供的解決方案
springmvc 屬於spring體系中的servlet一部分
springmvc 整體架構(工作機制)
- 用戶發起請求到控制器 DispatcherServlet(前端控制器)
- 前端控制器去handlerMapper查找Handler對象
- HandlerMapper返回HandlerExecutorChain 執行鏈(包含兩部分內容:Handler ,攔截器集合)
- 前端控制器,通過HandlerAdapter 適配器執行 Handler對象
- Handler處理具體的業務邏輯
- Handler處理完業務邏輯之後,返回ModelAndView 其中的View是視圖名稱
- 將ModelAndView返回前端控制器
- 前端控制器,通過ModelAndView 中的視圖名稱。在視圖解析器中查找視圖
- 返回真正的View 視圖對象
- 渲染視圖
- 返回用戶響應