MVC

 Web的三層模式爲:

 

·         >用戶接口層(UI Layer)

·         >業務邏輯層(Bussiness Layer)

·         >持久化層

 

MVC是一種設計思想。這種思想強調實現模型(Model)、視圖(View)和控制器的分離。這種思想是如何作用於web的呢?實際上,我們在web開發中引入MVC思想,想要達到的目的是: 實現UI層和業務邏輯層分離——控制器是爲了實現上述目的而存在的!它由JSPM1->JSPM2->MVC三層模式的發展

一、MVC設計思想

 MVC(Model-View-Controller)應用程序結構被用來分析分佈式應用程序的特徵。這種抽象結構能有助於將應用程序分割成若干邏輯部件,使程序設計變得更加容易。 

MVC結構提供了一種按功能對各種對象進行分割的方法(這些對象是用來維護和表現數據的),其目的是爲了將各對象間的耦合程度減至最小。MVC結構本來是爲了將傳統的輸入(input)、處理(processing)、輸出(output)任務運用到圖形化用戶交互模型中而設計的。但是,將這些概念運用於基於Web的企業級多層應用領域也是很適合的。 

在MVC結構中,模型(Model)代表應用程序的數據(data)和用於控制訪問和修改這些數據的業務規則(business rule)。通常模型被用來作爲對現實世界中一個處理過程的軟件近似,當定義一個模型時,可以採用一般的簡單的建模技術。 

當模型發生改變時,它會通知視(View),並且爲視提供查詢模型相關狀態的能力。同時,它也爲控制器(Controller)提供訪問封裝在模型內部的應用程序功能的能力。 

一個視(View)用來組織模型的內容。它從模型那裏獲得數據並指定這些數據如何表現。當模型變化時,視負責維持數據表現的一致性。視同時將用戶要求告知控制器(Controller)。 

控制器(Controller)定義了應用程序的行爲;它負責對來自視的用戶要求進行解釋,並把這些要求映射成相應的行爲,這些行爲由模型負責實現。在獨立運行的GUI客戶端,用戶要求可能是一些鼠標單擊或是菜單選擇操作。在一個Web應用程序中,它們的表現形式可能是一些來自客戶端的GET或POST的HTTP請求。模型所實現的行爲包括處理業務和修改模型的狀態。根據用戶要求和模型行爲的結果,控制器選擇一個視作爲對用戶請求的應答。通常一組相關功能集對應一個控制器。下圖描述了一個MVC應用程序中模型、視、控制器三部分的關係: 
 

 

 

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