更新時間:2020-03-09 10:12:20 來源:動力節(jié)點 瀏覽2470次
Java mvc框架視頻教程:了解SpringMVC框架,JavaEE體系結(jié)構(gòu)包括四層,從上到下分別是應(yīng)用層、Web層、業(yè)務(wù)層、持久層。Struts和SpringMVC是Web層的框架,Spring是業(yè)務(wù)層的框架,Hibernate和MyBatis是持久層的框架。
為什么要使用SpringMVC?
很多應(yīng)用程序的問題在于處理業(yè)務(wù)數(shù)據(jù)的對象和顯示業(yè)務(wù)數(shù)據(jù)的視圖之間存在緊密耦合,通常,更新業(yè)務(wù)對象的命令都是從視圖本身發(fā)起的,使視圖對任何業(yè)務(wù)對象更改都有高度敏感性。而且,當(dāng)多個視圖依賴于同一個業(yè)務(wù)對象時是沒有靈活性的。
SpringMVC是一種基于Java,實現(xiàn)了WebMVC設(shè)計模式,請求驅(qū)動類型的輕量級Web框架,即使用了MVC架構(gòu)模式的思想,將Web層進行職責(zé)解耦?;谡埱篁?qū)動指的就是使用請求-響應(yīng)模型,框架的目的就是幫助我們簡化開發(fā),SpringMVC也是要簡化我們?nèi)粘eb開發(fā)。
MVC設(shè)計模式
MVC設(shè)計模式的任務(wù)是將包含業(yè)務(wù)數(shù)據(jù)的模塊與顯示模塊的視圖解耦。這是怎樣發(fā)生的?在模型和視圖之間引入重定向?qū)涌梢越鉀Q問題。此重定向?qū)邮强刂破?,控制器將接收請求,?zhí)行更新模型的操作,然后通知視圖關(guān)于模型更改的消息。
SpringMVC架構(gòu)
SpringMVC是Spring的一部分,如圖:
SpringMVC的核心架構(gòu):
具體流程:
?。?)首先用戶發(fā)送請求——>DispatcherServlet,前端控制器收到請求后自己不進行處理,而是委托給其他的解析器進行處理,作為統(tǒng)一訪問點,進行全局的流程控制;
(2)DispatcherServlet——>HandlerMapping,映射處理器將會把請求映射為HandlerExecutionChain對象(包含一個Handler處理器(頁面控制器)對象、多個HandlerInterceptor攔截器)對象;
?。?)DispatcherServlet——>HandlerAdapter,處理器適配器將會把處理器包裝為適配器,從而支持多種類型的處理器,即適配器設(shè)計模式的應(yīng)用,從而很容易支持很多類型的處理器;
?。?)HandlerAdapter——>調(diào)用處理器相應(yīng)功能處理方法,并返回一個ModelAndView對象(包含模型數(shù)據(jù)、邏輯視圖名);
?。?)ModelAndView對象(Model部分是業(yè)務(wù)對象返回的模型數(shù)據(jù),View部分為邏輯視圖名)——>ViewResolver,視圖解析器將把邏輯視圖名解析為具體的View;
?。?)View——>渲染,View會根據(jù)傳進來的Model模型數(shù)據(jù)進行渲染,此處的Model實際是一個Map數(shù)據(jù)結(jié)構(gòu);
?。?)返回控制權(quán)給DispatcherServlet,由DispatcherServlet返回響應(yīng)給用戶,到此一個流程結(jié)束。
以上就是動力節(jié)點Java培訓(xùn)機構(gòu)小編介紹的“Java mvc框架視頻教程:了解SpringMVC框架”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。