MVC 開發模式

來源:互聯網
上載者:User

標籤:流程   log   維護   model   mod   上進   添加   處理   ges   

MVC 開發模式

 

1、理解

在MVC模式中,應用程式被劃分成了模型(Model)、視圖(View)和控制器(Controller)三個部分。其中,模型部分包含了應用程式的商務邏輯和業務資料;視圖部分封裝了應用程式的輸出形式,也就是通常所說的頁面或者是介面;而控制器部分負責協調模型和視圖,根據使用者請求來選擇要調用哪個模型來處理業務,以及最終由哪個視圖為使用者做出應答。

 

注意:資料模型用來存放業務資料,比如訂單資訊、使用者資訊等;而商務邏輯模型包含應用的業務操作,比如訂單的添加或者修改等。

 

2、MVC 中的模型、視圖、控制器三者之間的互動關係:(MVC的工作原理)

(1)首先是展示視圖給使用者,使用者在這個視圖上進行操作,並填寫一些業務資料

(2)然後使用者會點擊提交按鈕,來發出請求

(3)視圖發出的使用者請求會到達控制器,在請求中包含了想要完成什麼樣的業務功能以及相關的資料。

(4)控制器會來處理使用者請求,會把請求中的資料進行封裝,然後選擇並調用合適的模型,請求模型進行狀態更新,然後選擇接下來要展示給使用者的視圖。

(5)模型會去處理使用者請求的業務功能,同時進行模型狀態的維護和更新

(6)當模型狀態發生改變的時候,模型會通知相應的視圖,告訴視圖它的狀態發生了改變。

(7)視圖接到模型的通知後,會向模型進行狀態查詢,擷取需要展示的資料,然後按照視圖本身的展示方式,把這些資料展示出來。

 

注意:Servlet+JSP+JavaBean模型的響應順序:

當使用者發出一個請求後,這個請求會被控制器Servlet接收到;Servlet將請求的資料轉換成資料模型JavaBean,然後調用商務邏輯模型JavaBean的方法,並將商務邏輯模型返回的結果放到合適的地方,比如請求的屬性裡;最後,根據商務邏輯模型的返回結果,由控制器來選擇合適的視圖(JSP),由視圖把資料展現給使用者。

 

3、MVC的組件關係圖(工作流程步驟)

 

4、使用MVC模式,可以獲得以下好處:

  •  低耦合性:在MVC模式中,模型和視圖是解耦的,模型不會依賴於視圖,而視圖也僅僅是從模型中擷取需要展示的資料,並不會與模型的邏輯處理相關聯。
  •  更低的開發成本:由於MVC模式幫我們清楚的劃分了各部分的職責,就可以讓程式員各司其職,Java程式員只關心商務邏輯的實現,也就是模型部分;而介面程式員只關心頁面展示,也就是視圖部分即可。
  •  更好的可維護性:MVC模式劃分出明晰的模型和視圖部分,並使其解耦,在軟體需求發生變更的時候,就可以各自獨立的改變而不會相互影響,使得程式更容易維護和擴充。

 

MVC 開發模式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.