- 三層架構
mvc與三層架構再學習 表現層(UI):展現給使用者的界面,即使用者在使用一個系統的時候的所見所得。
業務邏輯層(BLL):對資料層的操作,對資料業務邏輯處理。
資料通路層(DAL):直接操作資料庫,針對資料的增添、删除、修改、更新、查找等。
- MVC
mvc與三層架構再學習 MVC是 Model-View-Controller,嚴格說這三個加起來才是三層架構中的UI層,也就是說,MVC把三層架構中的UI層再度進行了分化,分成了控制器、視圖、實體。控制器完成頁面邏輯,通過實體來與界面層完成通話,而C層直接與三層中的BLL進行對話。
MVC是表現層的架構,MVC的Model實際上是ViewModel,即供View進行展示的資料。 ViewModel不包含業務邏輯,也不包含資料讀取。 而在N層架構中,一般還會有一個Model層,用來與資料庫的表相對應,也就是所謂ORM中的O。這個Model可能是POCO,也可能是包含一些驗證邏輯的實體類,一般也不包含資料讀取。進行資料讀取的是資料通路層。而作為UI層的MVC一般不直接操作資料通路層,中間會有一個業務邏輯層封裝業務邏輯、調用資料通路層。UI層(Controller)通過業務邏輯層來得到資料(Model),并進行封裝(ViewModel),然後選擇相應的View。
(此段節選其他優秀文章,原文連結:https://blog.csdn.net/xc_zhou/article/details/80673786)
-
mvc和三層架構的差別
三層架構是界面層(Web)業務邏輯層(Service)和資料通路層(Dao)構成的
MVC設計模式是模型層(Model)界面層(View)和控制層(Controller)構成的,而且他們之間也不對應。
三層架構是采用分層思想,減輕類與類(接口)之間的耦合,通俗的說是為了減輕代碼之間的依賴性,避免産生牽一發而動全身的後果。而MVC意在将後端代碼和前台展示代碼進行了分離。JavaBean既是一個封裝的java對象,View是用來給前台用戶端顯示回報的頁面,采用Jsp來完成。而前台的代碼與後端的邏輯代碼之間的互動工作就傳遞給了Servlet。
運作流程:Servlet接受到前台的傳遞的資料進行傳遞給業務邏輯層Service層,Service層處理完畢傳遞給資料庫通路Dao,Dao通過Jdbc或者持久化将資料注入到資料庫中去,繼而回報給Service層,Service層響應給Servlet,Servlet傳回給Jsp頁面(此段節選其他優秀文章,原文連結:https://blog.csdn.net/kese7952/article/details/81024892)
mvc與三層架構再學習