三层架构和mvc的区别
一.MVC簡介
MVC 即Model(模型),View(視圖),Controller(控制控制器)。
MVC是一種軟件開發架構模式,全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設計典范,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業務邏輯。MVC被獨特的發展起來用于映射傳統的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。
1.Model:模型對象是將程序數據存儲在數據庫中的應用程序部件。
2.View:視圖是顯示應用程序用戶界面 (UI) 的組件。
3.Controller:控制器則用于處理和響應用戶輸入和交互。
二.三層框架
三層架構將整個項目劃分為:表現層(UI)、業務邏輯層(BLL)、數據訪問層(DAL)。
三層架構就是將整個業務應用劃分為:界面層(User Interface layer)、業務邏輯層(Business Logic Layer)、數據訪問層(Data access layer)。區分層次的目的即為了“高內聚低耦合”的思想。在軟件體系架構設計中,分層式結構是最常見,也是最重要的一種結構。微軟推薦的分層式結構一般分為三層,從下至上分別為:數據訪問層、業務邏輯層(又或稱為領域層)、表示層。
1.數據訪問層(EntityFramework):主要負責對數據的訪問管理,為業務邏輯層提供方法調用。
2.業務邏輯層:主要負責業務邏輯的處理,對數據層的操作。
3.UI表示層:主要對用戶的請求接受,以及數據的返回,為客戶端提供應用程序的訪問。
三層框架引用關系圖:
?
三.MVC和三層架構的區別:
它倆劃分的層次不同。三層架構是一個分層式的軟件體系架構設計,它可適用于任何一個項目。MVC是一個設計模式,它是根據項目的具體需求來決定是否適用于該項目。
????????????M 即Model(模型層),主要負責處理業務邏輯以及數據庫的交互
?? ??? ??? ?V 即View(視圖層),主要負責顯示數據和提交數據
?? ??? ??? ?C 即Controller(控制層),主要是永作輔助捕獲請求并控制請求轉發
?? ??? ??? ?三層
?? ??? ??? ?UI界面層
?? ??? ??? ?BLL業務邏輯層
?? ??? ??? ?DAL數據訪問層
?? ??? ??? ?三層是基于業務邏輯來分的,而mvc是基于頁面來分的
?? ??? ??? ?MVC模式是一種復合設計模式,一種解決方案
?? ??? ??? ?三層是種軟件架構,通過接口實現編程
?? ??? ??? ?三層模式是體系結構模式,MVC是設計模式
?? ??? ??? ?三層模式又可歸于部署模式,MVC可歸于表示模式
硬要給他們對應的話,那么三層架構中的UI對應MVC中的view(jsp),都是用于顯示以及獲取界面的數據;三層架構中的BLL層和DAL層對應MVC中的Model(javabean)層都是用于處理上層傳遞來的數據以及從數據庫獲取的數據的;MVC中的Controller(Servlet)最多算是三層架構中的UI的一部分,也就我們常說的是Servlet。
?? ??? ??? ?
總結
以上是生活随笔為你收集整理的三层架构和mvc的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Adobe Photoshop CS6
- 下一篇: android手机通过笔记本无线wifi