有聚合根 User,里面有 Address 和 Password(不知道该设置为实体还是值)......我希望把 Password 和 Address 的修改分开来(即可以并发修改地址和密码互不冲突),UserRepository 无法做到细粒度的锁......所以应该是建 PasswordRepository 和 PasswordRepository 来去修改地址和密码?还是在 UserRepository 里面添加 saveXXX 方法,感觉这样就没那味了......
有聚合根 User,里面有 Address 和 Password(不知道该设置为实体还是值)......我希望把 Password 和 Address 的修改分开来(即可以并发修改地址和密码互不冲突),UserRepository 无法做到细粒度的锁......所以应该是建 PasswordRepository 和 PasswordRepository 来去修改地址和密码?还是在 UserRepository 里面添加 saveXXX 方法,感觉这样就没那味了......
|
1
难道真的就该忘记设计模式?在 UserRepository 里面加一堆方法来实现不同实体互不干扰的修改......
|
|
iffiMay 15, 2020
2
你拆了干什么?就在聚合根里头做
|
|
3
@iffi 不是在聚合根里面改了以后持久化的时候,A 改了密码,B 改了地址,同时提交就会出现问题,A 一切正常,B 发现自己改的地址刷新一下又回去了.......又不可能说同时只允许一个人(修改密码或修改地址),所以必须密码和地址必须分开
|
|
huijieweiMay 16, 2020 via iPhone
4
dRepository 属于持久层方案了 和 DDD 无关
|
|
5
@huijiewei 但是和 DDD 有结合吧......现在这种局部更新或者局部查询的事情也什么好的解决方案么,也不可能说把 User 再去做拆分......
|