天天看點

對MVC架構模式的了解

MVC的全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,是一種軟體設計典範。它是用一種業務邏輯、資料與界面顯示分離的方法來組織代碼,将衆多的業務邏輯聚集到一個部件裡面,在需要改進和個性化定制界面及使用者互動的同時,不需要重新編寫業務邏輯,達到減少編碼的時間。

MVC不是架構,不是設計模式,更不是架構,它僅僅是一種架構模式。它不描述系統架構,也不指定使用什麼技術,僅僅是描述系統架構的一種模式,類似于AOP、IOC、ORM等等,具體的架構技術則是基于這些模式的一些實作而已,比如基于MVC模式的架構有著名的Struts、Spring MVC、JSF、Tapestry以及比較老的WebWork等等,基于ORM模式的架構有Hibernate、MyBatis、iBatis以及.NET比較有名的Entity Framework等等。

MVC開始是存在于桌面程式中的,M是指業務模型,V是指使用者界面,C則是控制器。

最典型的MVC就是 JSP(view) +Servlet(controller) + JavaBean(model)

對MVC架構模式的了解
1、當控制器收到來自使用者的請求
2、控制器調用JavaBean完成業務
3、完成業務後通過控制器跳轉JSP頁面的方式給使用者回報資訊
4、JSP個給使用者做出響應。
       控制器都是核心           

複制

JavaBean作為模型,既可以作為資料模型來封裝業務資料,又可以作為業務邏輯模型來包含應用的業務操作。其中,資料模型用來存儲或傳遞業務資料,而業務邏輯模型接收到控制器傳過來的模型更新請求後,執行特定的業務邏輯處理,然後傳回相應的執行結果。

JSP作為表現層,負責提供頁面為使用者展示資料,提供相應的表單(Form)來用于使用者的請求,并在适當的時候(點選按鈕)向控制器送出請求來請求模型進行更新。

Serlvet作為控制器,用來接收使用者送出的請求,然後擷取請求中的資料,将之轉換為業務模型需要的資料模型,然後調用業務模型相應的業務方法進行更新,同時根據業務執行結果來選擇要傳回的視圖。