聚合根是实体,聚合根的id全局唯一,聚合根下实体id聚合根内唯一即可
public class Order{
//订单id 全局唯一
private String orderId;
//客户地址 值对象
private Address cusAddress;
//实体集合
private List<OrderItem> items;
}
实体有id,有状态,有生命周期,实体和实体通过id区分
public class OrderItem{
//实体id,若实体存在于聚合根内,在聚合根内唯一即可
private String productId;
//值对象
private String productName;
//值对象
private BigDecimal price;
//值对象
private int count;
}
值对象用于描述实体的状态
值对象本质是一个值,没有状态,通过比较值对象所有的值是否相等来判断是否为同一个值对象
public class Address{
//值对象
private String province;
//值对象
private String city;
//值对象
private String County;
}