Domain driven design 存储库、映射器以及如何加载对象及其关系 我使用C++(QT库)来制作一个简单的领域建模应用程序。我正在编写自己的O/R映射类。随着这个应用程序在未来的发展,我正试图保持一个干净的代码库,并清晰地划分各个层
我遇到的问题是何时何地加载在另一个模块的对象中引用的聚合根。(我在这里使用的是Eric Evans在DDD书中使用的“模块”一词。) 我目前有一个名为Domain driven design 存储库、映射器以及如何加载对象及其关系 我使用C++(QT库)来制作一个简单的领域建模应用程序。我正在编写自己的O/R映射类。随着这个应用程序在未来的发展,我正试图保持一个干净的代码库,并清晰地划分各个层,domain-driven-design,Domain Driven Design,我遇到的问题是何时何地加载在另一个模块的对象中引用的聚合根。(我在这里使用的是Eric Evans在DDD书中使用的“模块”一词。) 我目前有一个名为Client的简单对象,它位于ClientModule模块中。在PermitModule中,我有一个Permit对象。(实际情况更复杂,但为了简单起见,我将坚持使用这两个对象,因为它们是聚合根)Permit对象将客户机引用为申请人。这是我的领域模型 自下而上,我有一个基础架构层,它包含O/R映射类和存储库对象的具体实现。所以我在这里有一个Clien
Client
的简单对象,它位于ClientModule
模块中。在PermitModule
中,我有一个Permit
对象。(实际情况更复杂,但为了简单起见,我将坚持使用这两个对象,因为它们是聚合根)Permit
对象将客户机
引用为申请人
。这是我的领域模型
自下而上,我有一个基础架构层,它包含O/R映射类和存储库
对象的具体实现。所以我在这里有一个ClientMapper
,ClientRepositoryDb
,permitmap
,和PermitRepositoryDb
类
接下来是包含域模型(Client
和Permit
类)以及存储库接口ClientRepository
和PermitRepository
的域层
在上面,我有一个应用层,然后是一个表示层,但在本例中这些并不重要
我的问题是是否允许和客户机之间的关系加载到PermitMapper
类或PermitPository
类中。或者有其他的方法吗
这不仅适用于加载对象,还适用于保存和删除对象。我采用了映射器类完全加载自己的方法
我不是Java开发人员,但我想知道Hibernate(等人)是如何做到的?嗨!我现在面临着完全相同的问题。你的方法最终是什么样子的?你到底做了什么?您的域对象如何获取数据?