深挖SpringMVC_01_標準MVC/Web MVC/Spring MVC

1. MVC有什麼用 ?

想要學習Spring MVC,就必須要知道MVC。一說MVC好像大家都很理解的樣子,其實並不然,當然我們也不是做學術研究的,沒必要抓着概念性的東西不放,理解它的意思就行了。

總得來說,MVC是一個很廣的東西。它是一種架構型的設計模式,它本身不引入新的功能,只是幫助我們將開發的結構組織地更合理,使展示與模型分離,使流程控制邏輯和業務邏輯調用等與展示邏輯分離(有沒有發現,面試官經常喜歡問MVC是什麼有什麼用)。

2. MVC和Web MVC的區別

M即Module,也就是模型,V即View,也就是視圖,C即Controller,也就是控制器。

標準MVC:
這裏寫圖片描述

Web MVC:
這裏寫圖片描述

從上面兩圖可看出,在標準MVC中模型能主動推數據給視圖進行更新(觀察者模式),而在Web MVC中模型無法主動推數據給視圖,如果用戶想要更新視圖,需要再發送一次請求。

3. 什麼是Spring MVC ?

Spring MVC,其實就是Spring Web MVC,是一種基於Java的實現了Web MVC設計模式的輕量級Web框架,即使用了MVC架構的思想,將Web層解耦,幫助我們簡化開發。

4. Spring MVC有什麼用?

下面的話摘自網上,看看就行了,不是重點。

(1) 讓我們能非常簡單的設計出乾淨的 Web 層和薄薄的 Web 層;
(2) 進行更簡潔的 Web 層的開發;
(3) 天生與 Spring 框架集成(如 IoC 容器、AOP 等);
(4) 提供強大的約定大於配置的契約式編程支持;
(5) 能簡單的進行 Web 層的單元測試;
(6) 支持靈活的 URL 到頁面控制器的映射;
(7) 非常容易與其他視圖技術集成,如 Velocity、FreeMarker 等等,因爲模型數據不放在特定的 API 裏,而是放在一個 Model 裏(Map 數據結構實現,因此很容易被其他框架使用);
(8) 非常靈活的數據驗證、格式化和數據綁定機制,能使用任何對象進行數據綁定,不必實現特定框架的 API;
(9) 提供一套強大的 JSP 標籤庫,簡化 JSP 開發;
(10) 支持靈活的本地化、主題等解析;
(11) 更加簡單的異常處理;
(12) 對靜態資源的支持;
(13) 支持 Restful 風格。

這第一章,我簡單說了說MVC和Spring MVC做爲鋪墊,下面的章節纔開始真正的深挖。

發佈了56 篇原創文章 · 獲贊 31 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章