MVC 設計模式概述



(尊重勞動成果,轉載請註明出處:http://blog.csdn.net/qq_25827845/article/details/53292312)算法


一、MVC設計模式:數據庫


  如圖所示,MVC模式(Model-View-Controller)是軟件工程中的一種軟件架構模式,把軟件系統分爲三個基本部分:模型設計模式

(Model)、視圖(View)和控制器(Controller)。MVC模式最先爲Trygve Reenskaug提出,爲施樂帕羅奧多研究中心(Xerox 服務器

PARC)的Smalltalk語言發明的一種軟件設計模式。MVC可對程序的後期維護和擴展提供了方便,而且使程序某些部分的重用提供架構

了方便。並且MVC也使程序簡化,更加直觀。框架


  •  控制器Controller:對請求進行處理,負責請求轉發;
  • 視圖View:界面設計人員進行圖形界面設計;
  • 模型Model:程序編寫程序應用的功能(實現算法等等)、數據庫管理;

      注意,MVC不是Java的東西,幾乎如今全部B/S結構的軟件都採用了MVC設計模式。可是要注意,MVC在B/S結構軟件並無完spa

全實現,例如在咱們從此的B/S軟件中並不會有事件驅動!
.net


二、JavaWeb與MVC

  JavaWeb的經歷了JSP Model一、JSP Model1二代、JSP Model2三個時期。設計

 

2.1 JSPModel1第一代orm

JSP Model1是JavaWeb早期的模型,它適合小型Web項目,開發成本低!Model1第一代時期,服務器端只有JSP頁面,全部的

操做都在JSP頁面中,連訪問數據庫的API也在JSP頁面中完成。也就是說,全部的東西都耦合在一塊兒,對後期的維護和擴展極爲不

利。

 


2.2 JSPModel1第二代

  JSP Model1第二代有所改進,把業務邏輯的內容放到了JavaBean中,而JSP頁面負責顯示以及請求調度的工做。雖然第二代比

第一代好了些,但還讓JSP作了過多的工做,JSP中把視圖工做和請求調度(控制器)的工做耦合在一塊兒了。

 

 


2.3 JSPModel2


JSP Model2模式已經能夠清晰的看到MVC完整的結構了。

  • JSP:視圖層,用來與用戶打交道。負責接收用來的數據,以及顯示數據給用戶;
  • Servlet:控制層,負責找到合適的模型對象來處理業務邏輯,轉發到合適的視圖;
  • JavaBean:模型層,完成具體的業務工做,例如:開啓、轉帳等。

 

JSP Model2適合多人合做開發大型的Web項目,各司其職,互不干涉,有利於開發中的分工,有利於組件的重用。可是,Web

項目的開發難度加大,同時對開發人員的技術要求也提升了。

 

三、JavaWeb經典三層框架

 

咱們常說的三層框架是由JavaWeb提出的,也就是說這是JavaWeb獨有的!

所謂三層是表述層(WEB層)、業務邏輯層(Business Logic),以及數據訪問層(Data Access)

  • WEB層:包含JSP和Servlet等與WEB相關的內容;
  • 業務層:業務層中不包含JavaWeb API,它只關心業務邏輯;
  • 數據層:封裝了對數據庫的訪問細節;

 

       注意,在業務層中不能出現JavaWebAPI,例如request、response等。也就是說,業務層代碼是可重用的,甚至能夠應用到非

Web環境中。業務層的每一個方法能夠理解成一個萬能,例如轉帳業務方法。業務層依賴數據層,而Web層依賴業務層!

 

 


若是對你有幫助,記得點贊哦~

相關文章
相關標籤/搜索