DAO程序員
DAO(Data Access Object) 數據訪問對象是第一個面向對象的數據庫接口,它顯露了 Microsoft Jet 數據庫引擎(由 Microsoft Access 所使用),並容許 Visual Basic 開發者經過 ODBC 像直接鏈接到其餘數據庫同樣,直接鏈接到 Access 表。DAO 最適用於單系統應用程序或小範圍本地分佈使用。數據庫
訪問接口
DAO(Data Access Object)是一個數據訪問接口,數據訪問:顧名思義就是與數據庫打交道。夾在
業務邏輯與數據庫資源中間。
在覈心
J2EE模式中是這樣介紹DAO模式的:爲了創建一個健壯的J2EE應用,應該將全部對
數據源的訪問操做抽象封裝在一個公共API中。用程序設計的語言來講,就是創建一個接口,接口中定義了此應用程序中將會用到的全部
事務方法。在這個應用程序中,當須要和數據源進行交互的時候則使用這個接口,而且編寫一個單獨的類來實現這個接口在邏輯上對應這個特定的數據存儲。
訪問對象
DAO(
數據訪問對象)是一種
應用程序編程接口(API),存在於微軟的Visual Basic中,它容許程序員請求對微軟的Access數據庫的訪問。DAO是微軟的第一個
面向對象的
數據庫接口。DAO對象封閉了Access的Jet函數。經過Jet函數,它還能夠訪問其餘的
結構化查詢語言(SQL)數據庫。
DAO基礎
DAO模式是標準的J2EE設計模式之一.開發人員使用這個模式把底層的數據訪問操做和上層的商務邏輯分開.一個典型的DAO實現有下列幾個組件:
1. 一個DAO工廠類;
2. 一個DAO接口;
3. 一個實現DAO接口的具體類;
4. 數據傳遞對象(有些時候叫作值對象).
具體的DAO類包含了從特定的數據源訪問數據的邏輯。
關於DAO要記住的一件重要事情是它們是事務性對象。每一個被DAO執行的操做(對象建立,更新、或刪除數據)都是和事務相關聯的。一樣的,事務劃分(transaction demarcation)的概念是特別重要的。
事務劃分是在事務界定定義中的方式。J2EE規範爲事務劃分描述了兩種模式:編程性事務(programmatic)和聲明性事務(declarative).下表是對這兩種模式的拆分:
聲明性事務劃分 編程性事務劃分
程序員使用EJB的部署描述符聲明
事務屬性 程序員擔負編寫事務邏輯代碼的責任。
運行時環境(EJB容器)使用這些屬性來自動的管理事務。應用程序經過一個API接口來控制事務。