Javaweb經典三層架構的演變

1.Javaweb經歷了三個時期

①JSP Model1第一代
JSP Model1是JavaWeb早期的模型,它適合小型Web項目,開發成本低!Model1第一代時期,服務器端只有JSP頁面,所有的操作都在JSP頁面中,連訪問數據庫的API也在JSP頁面中完成。也就是說,所有的東西都耦合在一起,對後期的維護和擴展極爲不利。

JSP Model1第一代

②JSP Model1第二代
JSP Model1第二代有所改進,把業務邏輯的內容放到了JavaBean中,而JSP頁面負責顯示以及請求調度的工作。雖然第二代比第一代好了些,但還讓JSP做了過多的工作,JSP中把視圖工作和請求調度(控制器)的工作耦合在一起了。

這裏寫圖片描述

③JSP Model2
JSP Model2模式已經可以清晰的看到MVC完整的結構了。
·JSP:視圖層,用來與用戶打交道。負責接收用來的數據,以及顯示數據給用戶;
·Servlet:控制層,負責找到合適的模型對象來處理業務邏輯,轉發到合適的視圖;
JavaBean:模型層,完成具體的業務工作,例如:開啓、轉賬等。

這裏寫圖片描述

這就是javaweb經歷的三個年代,JSP Model2適合多人合作開發大型的Web項目,各司其職,互不干涉,有利於開發中的分工,有利於組件的重用。但是,Web項目的開發難度加大,同時對開發人員的技術要求也提高了。

2.JavaWeb經典三層框架

我們常說的三層框架是由JavaWeb提出的,也就是說這是JavaWeb獨有的!
所謂三層是表述層(WEB層)、業務邏輯層(Business Logic),以及數據訪問層(Data Access)。
·WEB層:包含JSP和Servlet等與WEB相關的內容;
·業務層:業務層中不包含JavaWeb API,它只關心業務邏輯;
·數據層:封裝了對數據庫的訪問細節;

  注意,在業務層中不能出現JavaWeb API,例如request、response等。也就是說,業務層代碼是可重用的,甚至可以應用到非Web環境中。業務層的每個方法可以理解成一個萬能,例如轉賬業務方法。業務層依賴數據層,而Web層依賴業務層!
這裏寫圖片描述


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章