更新時(shí)間:2020-12-01 17:12:24 來源:動(dòng)力節(jié)點(diǎn) 瀏覽1396次
SpringMVC是強(qiáng)大的Web開發(fā)框架,基于Spring。課程從基礎(chǔ)開始逐步講解SpringMVC框架Web應(yīng)用的相關(guān)技術(shù)點(diǎn)。以注解為核心@Controller, RequestMapping,@ControllerAdvice,@ExceptionHandler等。Spring重要對(duì)象攔截器,異常處理器,源代碼隨堂分析。 整合流行的SSM。
SpringMVC原理
SpringMVC工作的原理圖如下
過程如下:
http請(qǐng)求:客戶端提交請(qǐng)求到DispatcherServlet。
尋找處理器:DispatcherServlet是一個(gè)Spring提供的前端控制器,所有請(qǐng)求都是他來發(fā)放的。但是它需要HandlerMapping定位到具體的Controller。
調(diào)用處理器:在DispatcherServlet通過HandlerMapping找到控制器后,它就將http請(qǐng)求提交到Controller。
調(diào)用模型處理業(yè)務(wù):Controller執(zhí)行相關(guān)的邏輯代碼。
ModelAndView:在Controller執(zhí)行完相關(guān)的處理后,返回ModelAndView。
處理視圖映射:ViewResolver是視圖解析器,將一個(gè)邏輯上面的視圖名稱機(jī)械為一個(gè)真正的視圖同時(shí)取出model。
將模型數(shù)據(jù)傳給View顯示:將model數(shù)據(jù)放入view中。
在SpringMVC應(yīng)用程序中,模型通常由POJO對(duì)象組成,它在業(yè)務(wù)層中被處理,在持久層中被持久化。視圖通常是用JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù)(JSTL)編寫的JSP模板。控制器部分是由dispatcherservlet負(fù)責(zé),在本教程中我們將會(huì)了解更多它的相關(guān)細(xì)節(jié)。
一些開發(fā)人員認(rèn)為業(yè)務(wù)層和DAO層類是MVC模型組件的一部分。我對(duì)此持有不同的意見。我不認(rèn)為業(yè)務(wù)層及DAO層類為MVC框架的一部分。通常一個(gè)web應(yīng)用是3層架構(gòu),即數(shù)據(jù)-業(yè)務(wù)-表示。MVC實(shí)際上是表示層的一部分。
Dispatcher Servlet(Spring控制器)
在最簡(jiǎn)單的Spring MVC應(yīng)用程序中,控制器是唯一的你需要在Java web部署描述文件(即web.xml文件)中配置的Servlet。Spring MVC控制器——通常稱作Dispatcher Servlet,實(shí)現(xiàn)了前端控制器設(shè)計(jì)模式。并且每個(gè)web請(qǐng)求必須通過它以便它能夠管理整個(gè)請(qǐng)求的生命周期。
當(dāng)一個(gè)web請(qǐng)求發(fā)送到Spring MVC應(yīng)用程序,dispatcher servlet首先接收請(qǐng)求。然后它組織那些在Spring web應(yīng)用程序上下文配置的(例如實(shí)際請(qǐng)求處理控制器和視圖解析器)或者使用注解配置的組件,所有的這些都需要處理該請(qǐng)求。
在Spring3.0中定義一個(gè)控制器類,這個(gè)類必須標(biāo)有 Controller注解。當(dāng)有 Controller注解的控制器收到一個(gè)請(qǐng)求時(shí),它會(huì)尋找一個(gè)合適的handler方法去處理這個(gè)請(qǐng)求。這就需要控制器通過一個(gè)或多個(gè)handler映射去把每個(gè)請(qǐng)求映射到handler方法。為了這樣做,一個(gè)控制器類的方法需要被 RequestMapping注解裝飾,使它們成為handler方法。
handler方法處理完請(qǐng)求后,它把控制權(quán)委托給視圖名與handler方法返回值相同的視圖。為了提供一個(gè)靈活的方法,一個(gè)handler方法的返回值并不代表一個(gè)視圖的實(shí)現(xiàn)而是一個(gè)邏輯視圖,即沒有任何文件擴(kuò)展名。你可以將這些邏輯視圖映射到正確的實(shí)現(xiàn),并將這些實(shí)現(xiàn)寫入到上下文文件,這樣你就可以輕松的更改視圖層代碼甚至不用修改請(qǐng)求handler類的代碼。
為一個(gè)邏輯名稱匹配正確的文件是視圖解析器的責(zé)任。一旦控制器類已將一個(gè)視圖名稱解析到一個(gè)視圖實(shí)現(xiàn)。它會(huì)根據(jù)視圖實(shí)現(xiàn)的設(shè)計(jì)來渲染對(duì)應(yīng)對(duì)象。
動(dòng)力節(jié)點(diǎn)推出的SpringMVC視頻教程全套免費(fèi)下載,這是一套超級(jí)詳細(xì)的SpringMVC入門視頻,本套SpringMVC視頻教程適合SpringMVC框架零基礎(chǔ)的學(xué)員學(xué)習(xí),這套SpringMVC入門視頻通俗易懂,是你學(xué)習(xí)SpringMVC框架的好幫手。
課程學(xué)習(xí)目錄
1.SpringMVC簡(jiǎn)介
2.基本代碼的完成
3.注冊(cè)中央調(diào)度器
4.指定SpringMVC配置文件的位置及文件名
5.loadOnStartup
6.使用視圖解析器
7.開發(fā)流程
8.執(zhí)行流程分析
9.DispatcherServlet的默認(rèn)配置
10.urlpattern-不能配杠星
11.urlpattern-最好也不要配成杠
12.urlpattern-不得不配成杠
13.靜態(tài)資源無法訪問-用Tomcat默認(rèn)的Servlet
14.靜態(tài)資源無法訪問-用MVC的default-servlet-handler
15.靜態(tài)資源無法訪問問題-使用MVC的resources解決
16.請(qǐng)求路徑問題-什么是絕對(duì)路徑
17.請(qǐng)求路徑問題-相對(duì)路徑的參照路徑
18.請(qǐng)求路徑問題-舉例
19.請(qǐng)求路徑問題-舉例2
20.請(qǐng)求路徑問題-舉例3
21.請(qǐng)求路徑問題-不帶斜杠的相對(duì)路徑的解決方案一
22.請(qǐng)求路徑問題-不帶斜杠的相對(duì)路徑的解決方案二
23.請(qǐng)求路徑問題-特例
24.配置式開發(fā)-BeanNameUrlHandlerMapping
完整目錄可以關(guān)注動(dòng)力節(jié)點(diǎn)Java視頻教程
主講老師:動(dòng)力節(jié)點(diǎn)郭老師
講師簡(jiǎn)介
天津大學(xué)計(jì)算機(jī)專業(yè)碩士研究生,10年以上軟件研發(fā)及管理經(jīng)驗(yàn),先后就職于文思海輝、中軟國(guó)際、新東方教育科技集團(tuán)-國(guó)外項(xiàng)目研發(fā)部等知名軟件企業(yè),從事JavaEE方向的軟件研發(fā)工作;精通SSH、SSM技術(shù)架構(gòu)下的開發(fā);精通WebLogic、WebSphere、JBoss、Tomcat等服務(wù)器的配置與管理;熟練使用MySQL、Oracle、DB2等數(shù)據(jù)庫(kù)產(chǎn)品;熟練使用HTML、CSS、JavaScript、Ajax、JQuery等前端交互技術(shù);熟練使用Axure原型設(shè)計(jì)工具;先后擔(dān)任高級(jí)Java軟件工程師、項(xiàng)目組長(zhǎng)、項(xiàng)目經(jīng)理、技術(shù)經(jīng)理、高級(jí)產(chǎn)品經(jīng)理及IT培訓(xùn)企業(yè)高級(jí)Java講師等職務(wù);具備扎實(shí)的技術(shù)功底、豐富的軟件研發(fā)、項(xiàng)目管理經(jīng)驗(yàn)及IT教學(xué)經(jīng)驗(yàn);授課激情四溢,幽默風(fēng)趣,能夠充分調(diào)動(dòng)學(xué)生學(xué)習(xí)的積極性與主動(dòng)性,課堂氣氛活躍,對(duì)學(xué)員耐心負(fù)責(zé);曾參與設(shè)計(jì)恒豐銀行“一貫P2P理財(cái)系統(tǒng)”、設(shè)計(jì)廣發(fā)銀行個(gè)人網(wǎng)上銀行系統(tǒng)、設(shè)計(jì)中國(guó)農(nóng)業(yè)銀行網(wǎng)上銀行系統(tǒng)、設(shè)計(jì)江西銀行客服服務(wù)中心網(wǎng)上服務(wù)系統(tǒng)、設(shè)計(jì)成都銀行客服服務(wù)中心網(wǎng)上服務(wù)系統(tǒng)、設(shè)計(jì)樂山銀行網(wǎng)上銀行系統(tǒng)等大型項(xiàng)目。
以上就是對(duì)“SpringMVC視頻教程,精選免費(fèi)下載”的介紹,希望對(duì)大家有所幫助,還想學(xué)習(xí)更多關(guān)于Java的課程,可以關(guān)注動(dòng)力節(jié)點(diǎn)官網(wǎng)Java視頻教程,免費(fèi)下載學(xué)習(xí)。
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743