我正在开发一个C ++域模型类库,它应该提供一些工具或框架(即接口类等),用于向/从二进制文件和RDBMS写入/读取类实例数据。此库的基础是使用RDBMS的应用程序,有几种方法通过执行一系列数据库检索和更新调用来获取成员数据集合来实例化类。序列化数据访问有一种不同的组织数据的方式,所以我希望域模型完全不知道主/外键,ID等。
为了解决这个问题,我考虑使用Data Access Object(DAO)模式,并希望对“粒度”,生命周期和DAO对象的使用有一些建议(在你的回复中,请注意我将使用C ++,而不是Java,并且域类不能保存来自RDBMS或二进制文件存储的任何ID /密钥信息):
感谢您的帮助!
答案 0 :(得分:1)
我没有一个很好的解决方案,但我可以告诉你我有什么,以及一些想法和经验。基于我之前看到过的模型,我已经构建了一些非常相似的东西作为C ++库。
一些想法,没有特别的顺序:
在DAO类之上,我构建了更多可访问的类,这些类代表了我的应用程序中的数据,可能会也可能不会将1-1映射到DAO类。允许它们具有任何类型的成员和结构,应该是应用程序使用的,并且具有将数据复制到DAO类中的方法,这些方法是构成它们的DAO类。
希望有所帮助。
答案 1 :(得分:0)
我不知道最好的实现,但这是我见过的:
免责声明:这正是我所见过的。