首頁>Club>
12
回覆列表
  • 1 # 沉著星球Yq

    三層體系結構是在客戶端和數據庫之間加入了一個“中間層”,這裡所說的三層體系是指邏輯上的三層,即把這三個層放置到一臺機器上。

    三層體系的應用程序將業務規則、數據訪問、合法性校驗等工作放到了中間層進行處理。

    通常情況下,客戶端不直接與數據庫進行交互,而是通過COM/DCOM通訊與中間層建立連接,再經由中間層與數據庫進行交互。

    UI表示層

    User Interface layer(UI)

    第一層是用戶界面:它包含了用戶界面,讓使用者輸入,輸出,查詢等工作.

    負責接收用戶的輸入,將輸出呈現給用戶,以及訪問安全性驗證,並對輸入的數據的正確性,有效性及呈現樣式負責,但對輸出的數據的正確性不負責.

    主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表現成:aspx,如果邏輯層相當強大和完善,無論表現層如何定義和更改,邏輯層都能完善地提供服務

    位於最外層(最上層),最接近用戶。用於顯示數據和接收用戶輸入的數據,為用戶提供一種交互式操作的界面。

    界面層提供給用戶一個視覺上的界面,通過界面層,用戶輸入數據、獲取數據。界面層同時也提供一定的安全性,確保用戶不用看到不必要的機密信息。

    BLL業務邏輯層

    Business Logic Layer(BLL)

    第二層是商務邏輯層(中間層):

    傳統的兩層構架根本沒有能力承擔巨大的工作壓力,必須通過某種中間系統實現壓力平衡.

    中間層是沒有圖形界面設計的代碼編寫,並且是OOP方式的代碼編寫,不僅要熟悉後臺數據庫的特性,還要考慮前臺界面工具的特性,最重要的是商務邏輯的構架,同時還要求懂得IIS、MTS(COM+)、NT的安全設置等複雜枯燥的東西。

    負責系統領域業務的處理,負責邏輯性邏輯的生成,處理及轉換。對所輸入的邏輯性數據的正確性及有效性負責,但對輸出的邏輯性數據及用戶性數據的正確性不負責任,對數據的呈現樣式不負責。

    要是針對具體的問題的操作,也可以理解成對數據層的操作,對數據業務邏輯處理,如果說數據層是積木,那邏輯層就是對這些積木的搭建。

    業務邏輯層(Business Logic Layer)無疑是系統架構中體現核心價值的部分。它的關注點主要集中在業務規則的製定、業務流程的實現等與業務需求有關的系統設計,也即是說它是與系統所應對的領域(Domain)邏輯有關,很多時候,也將業務邏輯層稱為領域層。

    業務邏輯層在體系架構中的位置很關鍵,它處於數據訪問層與表示層中間,起到了數據交換中承上啟下的作用。由於層是一種弱耦合結構,層與層之間的依賴是向下的,底層對於上層而言是“無知”的,改變上層的設計對於其調用的底層而言沒有任何影響。如果在分層設計時,遵循了面向接口設計的思想,那麼這種向下的依賴也應該是一種弱依賴關系。因而在不改變接口定義的前提下,理想的分層式架構,應該是一個支持可抽取、可替換的“抽屜”式架構。正因為如此,業務邏輯層的設計對於一個支持可擴展的架構尤為關鍵,因為它扮演了兩個不同的角色。對於數據訪問層而言,它是調用者;對於表示層而言,它卻是被調用者。

    邏輯層是界面層和數據層的橋梁,它響應界面層的用戶請求,執行任務並從數據層抓取數據,並將必要的數據傳送給界面層。

    DAL數據訪問層

    Data Access Layer(DAL)

    第三層是資料層:它就是用來放資料的地方,一般是指後端數據庫,主要有包括 Oracle、SQL Server 等,它主要是提供一個很大的地方,來有規則的存放數據.

    負責與數據源的交互,即數據的插入,刪除,修改,以及從數據庫中讀出數據等操作,但對數據的正確性和有效性不付責任,對數據的用途不了解,不負擔任何業務邏輯的處理。

    主要是對原始數據(數據庫或者文本文件等存放數據的形式)的操作層,而不是指原始數據,也就是說,是對數據的操作,而不是數據庫,具體為業務邏輯層或表示層提供數據服務.

    有時候也稱為是持久層,其功能主要是負責數據庫的訪問,可以訪問數據庫系統、二進制文件、文本文檔或是XML文檔。

    簡單的說法就是實現對數據表的Select,Insert,Update,Delete的操作。如果要加入ORM的元素,那麼就會包括對象和數據表之間的mapping,以及對象實體的持久化。

    數據層定義、維護數據的完整性、安全性,它響應邏輯層的請求,訪問數據。這一層通常由大型的數據庫服務器實現,如Oracle 、Sybase、MS SQl Server等

  • 中秋節和大豐收的關聯?
  • 有機種植標準?