為了賬號安全,請及時綁定郵箱和手機立即綁定

SpringMVC從入門到精通之第一章

2016.01.12 19:02 17336瀏覽

第一節 簡介:
SpringMVC是Spring框架的一個模塊,Spring和SpringMVC無需通過中間整合層進行整合。
SpringMVC是基于MVC的WEB框架。
MVC設計模式在B/S下的應用:
圖片描述

對上圖說明
①:瀏覽器發送請求到控制器(這里要知道控制器的作用)
②:控制器不能處理請求必須交給模型層來處理接著去訪問數據庫
③:模型層將處理好的結果返回給控制層
④:控制層將邏輯視圖響應給瀏覽器(瀏覽器顯示的是渲染過的視圖)
第二節 SpringMVC原理
先記住原理。然后對原理進行解釋,這片文章的重點,也是截下來每一章都會涉及到。
原理圖如下:
圖片描述

對工作原理解釋說明:
1,用戶發送請求到springmvc框架提供的DispatcherServlet 這個前端控制器(了解struts2的朋友也都知道其實struts2也有一個前端控制器web.xml中的filter標簽就是)
2,前端控制器會去找處理器映射器(HandlerMapping),處理器映射器根據請求url找到具體的處理器,生成處理器對象及處理器攔截器(如果有則生成)一并返回給DispatcherServlet 。
3,根據處理器映射器返回的處理器,DispatcherServlet 會找“合適”的處理器適配器(HandlerAdapter)
4,處理器適配器HandlerAdpater會去執行處理器(Handler開發的時候會被叫成controller 也叫后端控制器在struts2中action也是一個后端控制器)執行之前會有轉換器、數據綁定、校驗器等等完成上面這些才會去正在執行Handler
5,后端控制器Handler執行完成之后返回一個ModelAndView對象
6,處理器適配器HandlerAdpater會將這個ModelAndView返回前端控制器DispatcherServlet。前端控制器會將ModelAndView對象交給視圖解析器ViewResolver。
7,視圖解析器ViewResolver解析ModelAndView對象之后返回邏輯視圖。
8,前端控制器DispatcherServlet對邏輯視圖進行渲染(數據填充)之后返回真正的物理View并響應給瀏覽器。
對組件說明:
1,DispatherServlet:前端控制器
用戶請求到達前端控制器,相當于MVC中的C,而DispatherServlet是整個流程的核心,它來調用其他組件來處理用戶的請求,前端控制器的存在降低了其他組件之間的耦合度。
2,HandlerMapping:處理器映射器
它的作用就好比去看電影要拿著電影票根據電影票上面的座位號找到座位其中座位就是Handler,電影票以及上面的座位號就是URL
HandlerMapping 負責根據用戶請求找到Handler即處理器,springmvc提供了不同的映射器實現不同的映射方式,例如:配置文件方式,實現接口方式,注解方式等。
3,Handler:處理器
Handler是后端控制器,在前端控制器的控制下后端控制器對具體的用戶請求進行處理,Handler涉及到具體的用戶業務請求,所以一般情況下需要程序員根據業務需求開發.
4,HandlerAdapter:處理器適配器
通過HandlerAdapter對處理器進行執行,這是適配器模式的應用,通過適配器可以對更多類型的處理器進行執行。
播放的電影是3D的你看不清楚,因此電影院跟你說你要想看清電影就必須戴3D眼鏡。也就是說Handler滿足一定的要求才可以被執行。
5,ViewResolver:視圖解析器
ViewResolver負責將處理結果生成View視圖,ViewResolver首先根據邏輯視圖名解析成物理視圖名即具體的頁面地址,再生成View視圖對象,最后對View進行渲染將處理結果通過頁面展示給用戶。
感興趣的同學,希望能夠熟記這第一章。因為一旦你會struts1或者struts2等其他,第一章看結束基本上就能知道這個框架是怎么樣的了,剩余的也就是怎么實現。


本文為慕課網原創作者創作,歡迎任何形式的轉載。 為了尊重原創作者,轉載請標明【原文作者及慕課網原文地址】信息。謝謝!
點擊查看更多內容
94人點贊

若覺得本文不錯,就分享一下吧!

評論

相關文章推薦

正在加載中
意見反饋 幫助中心 APP下載
官方微信

舉報

0/150
提交
取消
lpl竞猜