我试图创建一个电子商务网站使用春季,冬眠和第一次后DDD。地图用户,地址,国家与DDD
目前的情况是这样的。我正在考虑对象USER作为具有地址列表(以前的..和当前)的聚合根,并且每个地址都与一个国家(isocode,name)相关联。
我假定地址和国家是价值对象..严格与用户有关。
在@Entity类用户有: @ElementCollection @CollectionTable(名称= “地址”,joinColumns = @JoinColumn(名称= “ADDRESS_ID”)) @OrderColumn(名称= “USER_ID”) 私人列表地址;
在@Embeddable类地址我想创建一个单独的国家表,我可以在初始化期间填充和地址只有一个外键。
我试图@Embeddable国家和地址 @Embedded 私人乡村国家
也@SecondaryTable ..但是这只能在@Entity课堂上使用。所以问题是,国家的领域保存在地址表内。
我应该为国家创建@Entity吗?或者有另一种方法来映射这些类?
感谢
你读过Eric Evans的书吗? – 2012-01-07 14:24:16
我通常不喜欢做出绝对的声明,但在这种情况下我会做出例外...... **绝对不能让数据库模式对您的领域模型的设计产生任何影响。 * DDD 101。 – MattDavey 2013-06-18 17:00:15