DAL層與BLL層的設計原則

2022-05-08 11:03:11 字數 596 閱讀 4699

通用dal層:

專用dal層:

基於通用dal層的基礎架構,為每個具體表提供乙個實體類和乙個dal類,此層比通用dal層的通用性稍差,這主要是為了給每個表提供一些專用的操作。此層以單錶為中心,為針對單錶的各種可能的訪問提供專用方法,可以作為單錶資料的入口。專用dal層不捕獲任何異常

專用dal層的實體類和dal類中的成員定義要向資料表對齊,函式定義中的引數要和儲存過程的引數完全匹配。

原則:基於表,作為表入口

bll層

以業務概念為核心組織業務處理過程,在業務處理過程中織入對專用dal層的呼叫,bll層通常通過捕獲異常或執行業務邏輯檢查(檢查業務資料,如沒有取到資料,或資料不符合當前業務等)來發現業務處理中的異常情況,並通過定義新的異常來向使用bll的ui層提供更為面向業務的異常資訊。

bll層的實體類和bll類的方法定義要向業務物件對齊,函式定義中的引數可以粗一些,直接傳業務物件過來,儘管有時候只使用了其中的個別字段(如用於update status的方法一般就只使用業務物件中的id和status)。

原則:基於業務邏輯來組織對專用dal層的呼叫。

基礎才是重中之重 如何整理BLL與DAL層的檔案

最近在專案重構過程中,發現專案比較亂,專案中的類檔案遍及了整個專案資料夾中,為此,我覺得有必要把它們整理一下,我的作法是 詳細劃分 bll層 根據業務或者領域進行劃分,如使用者業務,財務業務,產品業務,其它業務等等。dal層 根據表模組進行劃分,我們在設計表時會根據功能為表加字首,如user ord...

民意調查模組的BLL層

接著資料訪問層的再次重構,我們實現對應的bll層編碼,其實關於這部分的內容,可以參考bll層編碼實現,這裡僅僅簡單通過 而演示。構建民意調查模組的業務域物件 poll和polloption 上圖的 實際上只需從簡單實體類polldetail和polloptiondetail類中複製過來,改一下類名稱...

三層架構 DAL層中的Service類

每個類應該寫哪些方法?原則上,dal層應該提供對指定實體類所有操作的實現,也就是應該提供與增 刪 改 查操作對應的方法。而在實際應用或考試中,由於時間或其他方面的限制,我們經常只需提供當前實體類所涉及的操作的對應方法即可。對應方法基本書寫規則如下 僅分析通用情況,具體情況請具體分析 新增 對應乙個方...