Spring中SpringMVC,Springboot,Springcloud這樣很好理解.

前言:

不知道大家是如何理解的,最近一直和spring打交道,就想做一個個人理解的總結.

Spring

Spring是一個輕量級的開源框架,很強,很好用,因爲Spring已經對各個層做出了優化,其中各層的順序是這樣的(基本上環境也是這麼個順序搭出來的):


瀏覽器請求 <——> controller層(執行或控制器層) <——>service層(web服務層)<——> dao層(數據庫訪問層)<——> pojo層(domain對象層)<——>數據庫


核心思想有兩個:

1.控制反轉(IOC):
一種設計思想----將設計對象提交給spring容器,讓spring進行對象的創建或銷燬(基本上就是在對象層實現的),其中需要用到DI(依賴注入):也就是註冊,把對象註冊到spring容器

2.面向切面編程(AOP):
這個就很強了!!!
在程序運行的時候動態的將代碼切入到指定的方法繼續運行(裏面的方法不少,深入瞭解需要自己來=v=)


-----SpringMVC:


是一個MVC框架,其中包含了 Controller控制器(處理請求選擇視圖) View視圖(用戶與程序交互頁面) Model模型(業務處理) ,該框架的主要工作流程大概分爲6步:

1.發送請求:其實就是頁面發送的請求,通過前端控制器接收.

2.獲得處理器:通過請求的路徑獲得對應的controller(處理請求的類)

3.執行處理器:如上獲得controller之後,執行controller中的方法,返回一定的Model數據

4.解析視圖:將controller中返回的所有的數據進行解析,將邏輯視圖(看不懂的)轉化爲真正的視圖(看得懂的)

5.渲染視圖:將Model中的數據渲染到View中.

6.響應數據:將轉化好的視圖與相對應的數據渲染到頁面中將處理結果響應給瀏覽器.


-----Springboot:

(對於Springboot我只能說----牛掰!好用是真的好用,牛掰是真的牛掰.)

Springboot在我看來是一個已經配置好的電腦,裏面基本不需要配置什麼麻煩的東西,上手就能用(開發),並且裏面整合了很多框架和Tomcat啓動器之類等等的工具,對於開發來說是異常的方便


重點!!!
Springboot可以單獨使用,專注於快速方便開發單個個體服務


-----Springcloud:

這個東西也很強(spring牛掰!)
Springcloud是一個微服務框架,其中主要有如下幾個重要的功能和技術:

1.Eureka:實現了服務註冊中心,服務的註冊月發現.

2.Ribbon:提供負載均衡問題的解決方案.

3.Feign:類似於HttpClient的遠程調用技術,使用方式及其簡單,只需要定義接口即可遠程訪問.

4Hystrix:其中的熔斷機制可以避免在微服務中的個別服務出現異常時引起的故障蔓延.

5.Zuul:作爲網關,可以進行鑑權和動態路由的實現.


這裏提一嘴:Springboot可以單獨使用,並不依賴於Springcloud,但是!!!Springcloud必然依賴於Springboot,屬於依賴關係!!!
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章