- 一个事务只能更新一个聚合根
- 一个聚合根的更新只会有一个事件
- app层说明做什么,domain层说明怎么做
- 数据对象(
Do-data object
):字段与数据库一一对应,类型也是一一对应 - 外部传参(
Query-查询;Cmd-更新
) - 内部数据流转对象(
Dto-data transfer object
) - 返回给前端对象(
Info
orView
) - 值对象(
Vo-value object
):ddd的值对象,不定义view object,用Info代替
- 值对象要重写hashcode()和equals()
- 20220506:仓储层的事务采用编程式事务,禁止事务里面进行远程调用 (DONE)
- OrderGateway返回订单数据,它是实体?还是聚合根?
- 更好地控制事务粒度(不能用声明式事务)
- 有些业务场景需要用到分布式锁,控制锁粒度
- 后续重试是基于DomainService的方法粒度