2008-09-22 47 views

回答

5

OTL(otl.sourceforge.net)是一個優秀的C++數據庫庫。這是一個單獨的包含文件,因此沒有與Boost相關的所有複雜性(正確或錯誤!)。

就DAO本身而言,您有很多選擇。隱藏數據庫實現的最簡單的方法就是使用C++風格的接口,並在特定的實現中實現數據訪問層。

 
class MyDAO { 
    // Pure virtual functions to access the data itself 
} 

class MyDAOImpl : public MyDAO { 
    // Implementations to get the data from the database 
} 
+1

我可以看到它是如何爲數據訪問操作提供抽象接口的,但我想知道域對象如何與MyDAO對象相關聯以獲得實例化和持久化。 – 2008-09-22 20:00:19

3

快速的谷歌搜索數據訪問對象設計模式將返回至少10個結果在第一頁上將是有用的。其中最常見的是Jeff Foster已經展示的抽象界面設計。您可能希望添加的唯一一件事是創建對象的數據訪問對象工廠。

我可以用體面代碼找到的大多數例子都是用Java編寫的,這是Java中的一種常見設計模式,但它們仍然與C++非常相關,您可以很容易地使用它們。

This is a good link,它很好地描述了抽象工廠。