我在尝试理解如何使用值对象和聚合时遇到了一些困难。我将用一个例子来解释我的情况。
我有一个名为Relationship
. 它保存诸如 ID 和 StartDate 之类的值。有两个值对象:Boyfriend
和Girlfriend
。男朋友和女朋友对象都有地址,所以我创建了另一个值对象Address
。在数据库内部,这些都组合在一个表中(即 ID、StartDate、BoyfriendAddress、GirlfirendState 等)。
如何创建男朋友和女朋友?根据我对定义的理解,它们不符合聚合条件,因为它们没有根实体。一个值对象内部可以有另一个值对象吗?