模型-視圖-控制器模式
模型-視圖-控制器模式(Model View Controller)其實就是MVC模式,一個非常流行的設計模式。
MVC 是一種使用 MVC(Model View Controller 模型-視圖-控制器)設計創建 Web 應用程序的模式:
- Model(模型)表示應用程序核心(比如數據庫記錄列表)。
- View(視圖)顯示數據(數據庫記錄)。
- Controller(控制器)處理輸入(寫入數據庫記錄)。
MVC模式使模型、視圖、控制器分離,使得一個模型可以有多種視圖。如果用戶通過某個視圖的控制器改變了模型的數據,所有其他依賴於這些數據的視圖都反映出這些變化。因此,無論何時發生了何種數據變化,控制器都會將變化通知給所有的視圖,導致數據的更新。這就是一種模型的變化的傳播機制。
典型的MVC框架模式就是JSP+servlet+Javabean模式。
對於Jsp來說:
Model層:實現系統的業務邏輯,即javaBean部分
View層:負責與用戶交互,即在界面上展示數據對象給用戶,即html,jsp
Control層:Model與View之間溝通的橋梁,它可以分派用戶的請求並選擇恰當的視圖以用於顯示,同時它也可以解釋用戶的輸入並將它們映射為模型層可執行的操作,當然就是Servlet的職責了。
MVC的優點:耦合性低,視圖層和業務層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個應用的業務流程或者業務規則的改變只需要改動MVC的模型層即可。因為模型與控制器和視圖相分離,所以很容易改變應用程序的數據層和業務規則。MVC模式允許使用各種不同樣式的視圖來訪問同一個服務器端的代碼,因為多個視圖能共享一個模型
模型-視圖-控制器模式