MVC設計思想 Javaweb

2021-08-04 02:28:23 字數 3449 閱讀 8779

mvc設計思想:

mvc設計思想的好處:

隨著web

應用的商業邏輯包含逐漸複雜的公式分析計算、決策支援等,使客戶機越

來越不堪重負,因此將系統的商業分離出來。單獨形成一部分,這樣三層結構產生了。

其中『層

』是邏輯上的劃分。

三層體系結構是將整個系統劃分為如圖2.1

所示的結構

(1)表現層(presentation layer

):包含表示**、使用者互動

gui、資料驗證。

該層用於向客戶端使用者提供gui

互動,它允許使用者在顯示系統中輸入和編輯資料,同時

系統提供資料驗證功能。

(2)業務邏輯層(

business layer

):包含業務規則處理**,即程式中與業務

相關專業演算法、業務政策等等。該層用於執行業務流程和制訂資料的業務規則。業務邏

輯層主要面向業務應用,為表示層提供業務服務。

(3)資料持久層(

persistence layer

):包含資料處理**和資料儲存**。數

據持久層主要包括資料訪問服務,負責與資料庫管理系統(如資料庫)之間的通訊。

三個層次的每一層在處理程式上有各自明確的任務,在功能實現上有清晰的區分,

各層與其餘層分離,但各層之間存有通訊介面。

採用三層軟體設計架構後,軟體系統在可擴充套件性和可復用性方面得到極大提高,在

資源分配策略設計合理運用的同時,軟體的效能指標也得到提公升,系統的安全性和易管

理性也得到改善。

三層體系結構對web

應用的軟體架構產生很大影響,促進了基於元件的設計思想,

產生了許多開發web

層次框架的實現技術。較之兩級結構來說,三層結構修改和維護上

更加方便。目前開發b/s

結構的web

應用系統廣泛採用這種三層體系結構。

mvc模式 :

mvc 是

model-view-control

的簡稱,即模型-檢視

-控制器。它是乙個存在於伺服器

表達層的模型,它將應用分開,改變應用之間的高度耦合。

mvc 是在

20 世紀

80 年代發明的一種軟體設計模式,至今已被廣泛使用,最近幾年

被推薦為 sun

公司 j2ee

平台的設計模式。

mvc 模式結構

mvc 模式將應用分為模型、檢視和控制器三個部分:

1. 檢視:資料的展現。

檢視是使用者看到並與之互動的介面。檢視向使用者顯示相關的資料,並能接收使用者的輸入資料,但是它並不進行任何實際的業務處理。檢視可以向模型查詢業務狀態,但不能改變模型。檢視還能接受模型發出的資料更新事件,從而對使用者介面進行同步更新。

2. 模型:應用物件。

模型是應用程式的主體部分。 模型代表了業務資料和業務邏輯; 當資料發生改變時,它要負責通知檢視部分;乙個模型能為多個檢視提供資料。由於同乙個模型可以被多個檢視重用,所以提高了應用的可重用性。

3. 控制器:邏輯處理、控制實體資料在檢視上展示、呼叫模型處理業務請求。

當 web

使用者單擊

web

頁面中的提交按鈕來傳送

html

表單時,控制器接收請求並呼叫相應的模型元件去處理請求,然後呼叫相應的檢視來顯示模型返回的資料。

mvc 模式執行機制

如圖 2.2

所示為

mvc

模式執行機制

2、為什麼要在

web應用中使用

mvc架構

使用者介面邏輯的更改往往比業務邏輯頻繁,尤其是在基於web

的應用程式中。例如,可能新增新的使用者介面頁,或者可能完全打亂現有的頁面布局。對顯示的更改,盡可能地不要影響到資料和業務邏輯。

目前大部分web

應用都是將資料**和表示混在一起。經驗比較豐富的開發者會將資料從表示層分離開來,但這通常不是很容易做到的,它需要精心的計畫和不斷的嘗試。

mvc從根本上強制性的將它們分開。儘管構造

mvc應用需要一些額外的工作,但它帶來的好處是無庸質疑的。

2.1 提高**重用率

最重要的一點是多個檢視能共享乙個模型,無論使用者想要flash

介面或是

wap

介面;用乙個模型就能處理它們。由於已經將資料和業務規則從表示層分開,所以可以最大化的重用**。

2.2 提高程式的可維護性

因為模型是自包含的,並且與控制器和檢視相分離,所以很容易改變資料層和業務規則[3]

。例如,把資料庫從

mysql

移植到oracle

,或者把基於

rdbms

資料來源改變到

ldap

,只需改變模型即可。一旦正確的實現了模型,不管資料來自**,檢視都會正確的顯示它們。

mvc架構的運用,使得程式的三個部件相互對立,大大提高了程式的可維護性。

2.3 有利於團隊開發

在開發過程中,可以更好的分工,更好的協作。有利於開發出高質量的軟體。良好的專案架構設計,將減少編碼工作量 :採用mvc

結構 +

**生成器,是大多數

web應用的理想選擇。部分模型

(model)

、和儲存過程一般可用工具自動生成。控制

(controller)

器比較穩定,一般由於架構師(也可能是有經驗的人)完成;那麼整個專案需要手動編寫**的地方就只有檢視

(view)

了。在這種模式下,個人能力不在特別重要,只要懂點語法基礎的人都可以編寫,無論專案成員寫出什麼樣的**,都在專案管理者的可控範圍內。即使專案中途換人,也不會有太大問題。在個人能力參差不齊的團隊開發中,採用

mvc開發是非常理想的。

實現servlet的**。

[mvc

設計模式]

5)servletcontxt物件能夠實現**功能,即

307+location      

servletcontext context = this.getservletcontext();

//定位需要**的路徑

requestdispatcher rd = context.getrequestdispatcher("/success.html");

//真正轉向頁面

rd.forward(request,response);

MVC設計思想

controller注釋描述的物件為controller請求的處理器物件,我們通常稱之為handler,此物件應用於處理dispatcherservlet springmvc中的核心處理器 交給它的請求 model是乙個view中要呈現的資料的 封裝 乙個物件 用於展示資料 在controller中...

MVC設計思想入門

一.mvc是什麼?模型 model 指業務模型,用於處理業務資料 檢視 view 指使用者介面,用於資料顯示 控制器 controller 指控制器,用於協調模型和檢視,處理使用者互動,通常負責從檢視中讀取資料,控制使用者輸入,向模型傳送資料 二.mvc由何而來?書架由何而來 書籍越來越多,各類書籍...

MVC設計模式思想簡述

什麼是設計模式 設計模式是一套被反覆使用 多人知曉的,並經過分類編目的 設計經驗的總結。設計模式不是一種方法或技術,而是一種思想。語言無關 平台無關。例如 孫子兵法,三十六計等。設計模式共23種,常用的4 6種 工廠模式 模式 單例模式 介面卡模式 mvc設計模式 詳見 mvc核心思想 分離。mvc...