SpringMVC - SpringMVC的概述
概述:
1.Spring 為展現(xiàn)層提供的基于 MVC 設(shè)計(jì)理念的優(yōu)秀的Web 框架,是目前最主流的 MVC 框架之一。
2.Spring MVC 通過一套 MVC 注解,讓 POJO 成為處理請 求的控制器,而無須實(shí)現(xiàn)任何接口。
3.支持 REST風(fēng)格的 URL請求。
4.采用了松散耦合可插拔組件結(jié)構(gòu),比其他 MVC 框架更具擴(kuò)展性和靈活性。
?
Spring MVC主要由DispatcherServlet、處理器映射、處理器(控制器)、視圖解析器、視圖組成。他的兩個(gè)核心是兩個(gè)核心:
處理器映射:選擇使用哪個(gè)控制器來處理請求 。
視圖解析器:選擇結(jié)果應(yīng)該如何渲染。
SpringMVC工作原理:
1. Http請求:客戶端請求提交到DispatcherServlet。?
2. 尋找處理器:由DispatcherServlet控制器查詢一個(gè)或多個(gè)HandlerMapping,找到處理請求的Controller。?
3. 調(diào)用處理器:DispatcherServlet將請求提交到Controller。?
4. 調(diào)用業(yè)務(wù)處理和返回結(jié)果:Controller調(diào)用業(yè)務(wù)邏輯處理后,返回ModelAndView。?
5. 處理視圖映射并返回模型: DispatcherServlet查詢一個(gè)或多個(gè)ViewResoler視圖解析器,找到ModelAndView指定的視圖。?
6. Http響應(yīng):視圖負(fù)責(zé)將結(jié)果顯示到客戶端。
SpringMVC接口解釋:
?
(1)DispatcherServlet接口:?
Spring提供的前端控制器,所有的請求都有經(jīng)過它來統(tǒng)一分發(fā)。在DispatcherServlet將請求分發(fā)給Spring Controller之前,需要借助于Spring提供的HandlerMapping定位到具體的Controller。?
(2)HandlerMapping接口:?
將客戶請求到Controller映射。?
(3)Controller接口:?
需要為并發(fā)用戶處理上述請求,因此實(shí)現(xiàn)Controller接口時(shí),必須保證線程安全并且可重用。?
Controller將處理用戶請求,這和Struts Action扮演的角色是一致的。一旦Controller處理完用戶請求,則返回ModelAndView對(duì)象給DispatcherServlet前端控制器,ModelAndView中包含了模型(Model)和視圖(View)。?
從宏觀角度考慮,DispatcherServlet是整個(gè)Web應(yīng)用的控制器;從微觀考慮,Controller是單個(gè)Http請求處理過程中的控制器,而ModelAndView是Http請求過程中返回的模型(Model)和視圖(View)。?
(4)ViewResolver接口:?
Spring提供的視圖解析器(ViewResolver)在Web應(yīng)用中查找View對(duì)象,從而將相應(yīng)結(jié)果渲染給客戶。
轉(zhuǎn)載于:https://www.cnblogs.com/dudadi/p/8179180.html
總結(jié)
以上是生活随笔為你收集整理的SpringMVC - SpringMVC的概述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kvm虚拟机命令梳理
- 下一篇: 在Spring Boot项目中使用Spo