學習視頻:孫哥說SpringMVC:結合Thymeleaf,重塑你的MVC世界?。八从械腤eb開發(fā)探索之旅
第一章、SpringMVC的引言
1.1什么是SpringMVC
- 概念:SpringMVC是基于Spring Framework衍生而來的MVC框架,主要解決了原有MVC框架開發(fā)過程中,控制器(Controller)的問題
- SpringMVC是一個MVC框架
-
MVC是一個架構思想,在JavaEE開發(fā)中多用于Web開發(fā)。
-
應用MVC架構思想開發(fā)應用,會把一個項目劃分為了3個層次,M(model)模型層,V(View)視圖層,C(Controller)控制層
View JSP
Model Service+DAO
Controller Servlet
-
MVC這種分層開發(fā),體現(xiàn)了面向對象各司其職的設計思想,也更加有利于后續(xù)的項目維護(修改)。
-
- 為什么要基于Sping Framework
- 通過工廠(容器)創(chuàng)建對象,解耦合(IOC DI)。
- 通過AOP的方式,為目標類(原始類)增加額外功能
- 方便與第三方框架的集成
- MyBatis
- JPA
- MQ
-
原有MVC開發(fā)中控制器存在的問題
- 原有MVC開發(fā)中的控制器通過哪些技術實現(xiàn)的?
- 這些技術在實現(xiàn)控制器時,存在著哪些問題
實現(xiàn)技術:1.Servlet[基于Java Model2模式]
Servlet實現(xiàn)控制器存在的問題:
- 控制器的核心作用
- 接收用戶的請求,調用業(yè)務功能(Service),并根據(jù)處理結果控制程序的運行流程。
- 控制器的核心代碼
- 接收client參數(shù)
- 調用業(yè)務對象(Service)
- 流程跳轉(頁面跳轉)
-
控制器存在的問題
-
接收client請求參數(shù)方面
- 代碼冗余
- 只能接受字符串類型的數(shù)據(jù),需要手工進行類型轉換
- 無法自動封裝對象
-
調用業(yè)務對象(Service)方面
UserService userService = new UserServiceImpl();//耦合代碼 boolean isLogin = userService.login(name,password);
通過new的方式獲得業(yè)務對象(service)存在耦合
-
流程跳轉(頁面跳轉)
-
跳轉路徑耦合
-
與視圖層技術的耦合
文章來源:http://www.zghlxwxcb.cn/news/detail-748475.html
-
-
1.2 SpringMVC課程的學習要點
1.2.1 SpringMVC的三種開發(fā)模式
- 傳統(tǒng)視圖開發(fā)【基礎課程講解】
- 通過作用域(request,session)進行數(shù)據(jù)的傳遞
- 通過視圖層技術進行數(shù)據(jù)的展示(JSP,FreeMarker,Thymeleaf)
- 前后端分離開發(fā)【MVC高級課程講解】
- 多種新的請求發(fā)送方式
- Restful的訪問(Url的訪問方式)
- 通過HttpMessageConverter進行數(shù)據(jù)響應
- Spring5 WebFlux開發(fā)【獨立課程講解】
- 替換傳統(tǒng)JavaWeb開發(fā)的一種新的Web開發(fā)方式
- 通過NettyServer,進行Web通信
1.2.2控制器開發(fā)步驟
- 接受client請求參數(shù)
- 調用業(yè)務對象
- 流程跳轉
下一章:Spring MVC學習隨筆-第一個Spring MVC程序(父子項目結構、Tomcat配置、ViewResolver)文章來源地址http://www.zghlxwxcb.cn/news/detail-748475.html
到了這里,關于Spring MVC學習隨筆-Spring MVC介紹的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!