MVC:模型(Model)、視圖(View)、控制器(Control)
流程如下:
首先是視圖向控制器發送請求,控制器再將業務請求發送給模型,
然後模型處理請求業務並把結果返回給控制器,控制器根據結果再選擇視圖。
MVC的優點:
1、低耦合性:
視圖層和業務層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和
控制器代碼。同樣,一個應用的業務流程或者業務規則的改變只需要改動
MVC的模型層即可,因爲模型與控制器和視圖相分離,所以很容易改變應用
程序的數據層和業務規則。
2、高重用性和可適用性
MVC模式允許你使用各種不同樣式的視圖來訪問同一個服務器端的代碼。它
包括任何WEB(HTTP)瀏覽器或者無線瀏覽器(wap),例如:例如,很多數
據可能用HTML來表示,但是也有可能用WAP來表示,而這些表示所需要的僅令
是改變視圖層的實現方式,而控制層和模型層無需做任何改變。
3、較低的生命週期成本
MVC使降低開發和維護用戶接口的技術含量成爲可能。
4、快速的部署
使用MVC模式使開發時間得到相當大的縮減,它使程序員(Java開發人員)
集中 精力於業務邏輯,界面程序員(HTML和JSP開發人員)集中精力於表
5、可維護性
分離視圖層和業務層也使得WEB應用更便於維護和修改
6、有利於軟件工程化管理
由於不同的層各司其職,沒一層不同的應用具有某些相同的特徵,有利於通過
工程化、工具化管理程序代碼。
MVC的缺點:
1、增加了系統結構和實現的複雜性
2、視圖與控制器間的過於緊密的連接
3、視圖對模型數據的低效率訪問
4、目前一般高級的界面工具或構造器不支持MVC模式,改造這些工具以適應
MVC需要和建立分離的部件的代價很高,從而造成使用MVC的困難