首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DDD,不同的域模型是否依赖于同一组表?

DDD,不同的域模型是否依赖于同一组表?
EN

Stack Overflow用户
提问于 2015-04-15 15:37:35
回答 4查看 2.2K关注 0票数 5

在DDD中,一条指南指出域模型不应该与持久化有关。这意味着不同的域模型可能依赖于相同的表。同时,由于ORMs在转换模型方面的技术限制(我想?),这个目标似乎很难实现。对于实际的ORM,是否有一种方法可以创建非常具体的域模型,这些模型依赖于数据库中相同的表,并防止99.99%的DDD实现中实体和表之间令人失望的1:1映射?这些技术限制(?)使指导方针过时?

谢谢,

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-04-20 09:37:30

实体和表之间的“令人失望的1:1映射”可能在两方面使您失望--无法从多个表填充实体,也无法从同一表填充多个实体。

似乎您对后者更感兴趣,大多数ORM都可以使用,即使仅通过在ORM的单独映射“实例”中为一个表定义不同的映射也是可能的。描述了实体框架的一种解决方案这里这里

票数 3
EN

Stack Overflow用户

发布于 2015-04-15 16:10:03

我想答案取决于您的域模型与数据库表有多大的不同。有时,您可能无法单独使用ORM实现DDD持久性。这不应妨碍您或导致您设计您的域模型围绕您的数据库。这也是DDD拥有存储库接口概念的原因,因为扭曲模型的任务可能非常复杂。

该指南现在并不比第一次编写时更过时。ORMs可能与此准则兼容,也可能不兼容,但这并不意味着使用其他方法无法实现。

我同意您的评估,大多数DDD模型是一个1:1的镜像数据库。简单的回答是,坚持并不总是容易的,但绝不是不可能的。

票数 1
EN

Stack Overflow用户

发布于 2015-04-16 16:10:32

如果您使用Java,您可以使用遵循Data模式的MyBatis来实现这一点。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29654597

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档