天天看點

淺談Java三層架構

1. 設計思想: 高内聚,低耦合。

2. 優點

  1. 結構明确,開發人員隻需關注其中某一層即可;
  2. 降低層與層之間的依賴,即低耦合性;
  3. 可以友善快捷地用新的實作替換原有的層次實作;
  4. 後期維護時,降低維護成本和維護時間;

3. 缺點

  1. 降低系統性能。如果不采用分層架構,使用者可以直接造訪資料庫。現在需要通過中間層實作,增加了時間,降低了性能。
  2. 可能會導緻級聯的修改。例如在表示層中增加某個功能,為保證設計符合分層式架構,可能在業務邏輯層和資料通路層都增加相應的代碼。
  3. 增加開發成本。

4. 三層架構劃分解析

三層架構是從邏輯上進行劃分,不是實體上的三層架構。不是簡單放置三台機器就是三層架構體系,也不是B/S應用才是三層架構體系。邏輯上三層,即該三層架構可以布置在一台機器上。

  • 顯示層(User Interface Layer) UIL

通俗講就是展現給使用者的界面,即使用者在使用一個系統的時候他的所見所得。顯示層可以采集使用者輸入的資訊和操作,并向使用者展現特定業務資料。

  • 業務邏輯層(Business Logic Layer)BLL

​針對具體問題的操作,也可以說是對資料層的操作,對資料業務邏輯處理。該層負責從UI中擷取使用者指令和資料,執行業務邏輯,并通過DAL寫入資料源,還可以從DAL中擷取資料,将結果傳回給UI。

  • 資料通路層(Data Access Layer)DAL

該層所做事務直接操作資料庫,針對資料的增添、删除、修改、查找等。用來從資料源加載資料,也就是查找資料,資料源包括資料庫、XML檔案、文本檔案等;向資料源寫入資料或删除資料。簡單的總結一下就是資料庫中的增删改查。

引用