在 DDD 中,在具有地址值对象的 Person 的聚合根中,将该地址映射到数据库表很简单:只需将地址对象的属性嵌入到记录中即可。但是,当此人有一个列表时,计数可能会有所不同呢?我们是否创建一个单独的表来存储我们所有的地址(从而在每个地址上强加一些准身份),并且每一行都有一个 FK 回到它所属的人?
有一个对象关系阻抗不匹配的很好的例子。您可以做的是拥有一个层超类型,其中存在持久性问题(如 id 字段)。因此,从持久性层的角度来看,VO 是一个实体,但仍在域中建模为 VO。
您可以在此处阅读有关上述内容的更多信息。