mvc即模型-檢視-控制器,將應用程式的邏輯層與展現層進行分離的一種設計模式。
傳統的mvc包括三個方面:模型、檢視、控制器。
模型,關注資料處理;
檢視,關注資料顯示和報表處理;
控制器,負責協調模型和檢視
m:model層主要負責要處理的業務**和資料操作**
v:view向使用者展示資料,通常指使用者看到的介面,通常由html+js+css組成
c:用於模型和檢視的協調,保證資料的同步,一旦模型發生改變檢視也會同步進行改變。
(檢視層和業務層分離,這樣就允許更改檢視層**而不用重新編譯模型和控制器**)
使用mvc的原因
mvc中v負責顯示資料,而顯示的資料若想要改變,只要變動v中的**,c和m層中的**並不需要改變。mvc的優點:
1.耦合性低(檢視層和業務層分離,更改檢視層**,不用重新編譯模型和控制器**)缺點2.重用性高(多個檢視能共享乙個模型)
3.生命週期成本低(mvc開發和維護使用者介面的技術含量降低)
4.部署快(mvc模式開發時間短,是程式設計師集中處理業務邏輯)
5.可維護性高(分離檢視和業務邏輯層跟易於維護和修改)
6.有利於軟體工程化的管理(通過工程化和工具化管理程式)
1.沒有明確的定義三層架構三層架構重點內容分層架構一般為三層:表示層、業務邏輯層(或領域層)、資料訪問層。2.不適合小型,中等規模的應用程式
3.增加系統結構和實現的複雜性
4.檢視與控制器間的過於緊密的連線
5.檢視對模型資料的低效率訪問
6.一般高階的介面工具或構造器不支援模式
五層架構五層架構:使用者介面層、控制層、業務邏輯層、資料持久層、系統服務層表現層(ui):通俗講就是展現給使用者的介面,即使用者在使用乙個系統的時候他的所見所得;
業務邏輯層(bll):針對具體問題的操作,也可以說是對資料層的操作,對資料業務邏輯處理;
資料訪問層(dal):該層所做事務直接運算元據庫,針對資料的增添、刪除、修改、查詢等。
使用者介面層:即網頁,使用者能實實在在看得到的,能進行操作的介面;控制層:控制使用者介面層和業務邏輯層進行資料互動,對於struts2而言就是action;
業務邏輯層:針對具體問題的操作,對業務邏輯的處理;
資料持久層:控制事務,直接運算元據庫,對資料進行crud操作(即資料的增、刪、改、查),即hibernate或mybatis負責與資料庫的通訊;
系統服務層:即提供公共的服務性功能,供各個操作層使用。
MVC架構介紹 框架分層
tunynet.infrastructurs 是我們自己封裝的乙個底層dll基礎設施,我們外面只需要引用這個dll就可以呼叫裡面的方法去完成外面的功能的實現 這裡面主要就是對快取models 郵件 di容器 事件 附件管理 影象處理 kvstore logging 實體封裝 資料訪問 定時任務封裝了...
移動App設計之分層架構 MVC
場景分析 我們知道,乙個移動裝置的應用大多與網路有關,也就是說,我在移動裝置上看到的資料,一般都是從server上 拉 過來,顯示在我們的移動裝置 ios androiud wpohone等 上。那我們就這個 拉 的過程分析,拉什麼樣的資料?去 拉?拉過來的資料怎麼處理?用程式設計 開發 的思維看,...
MVC到底怎麼分層
出處 mvc,在程式中乙個永遠離不開的話題。由於層次架構,在程式設計之初就必須形成,對程式整體走向與把握起著十分重要的作用。然而總讓人困惑的是 mvc到底怎麼分層!那麼就先對我自己認為比較理想的分層方法說說吧,如果大家有什麼意見,歡迎多多指點。view層 ui層 介面層 1.介面中所有控制項必要的格...