静态表的 DDD 聚合根

DDD Aggregate Root for static tables

我们正在使用 Spring Data JPA 重构现有应用程序。有近 250 个静态代码数据库 table 可以被其他聚合根引用。为了将代码 table 附加到聚合根,我们需要访问特定代码 table 记录。这是否意味着我们应该创建 250 个存储库?我的意思是每个静态代码的回购 table 因为它本身就是一个聚合根?

我看到了 this 问题,这有点相似,但在我的情况下,我有很多静态 tables。

在 [tag:Domain Driven Design] 的上下文中,REPOSITORY 应该理解为 Eric Evans 在他 2003 年的书中所描述的。存储库模式在第 6 章中介绍和描述,大约 "The Life Cycle of a Domain Object".

因此,如果您的静态代码表具有由您的域模型管理的生命周期,那么是的,应该将其表示为具有自己的存储库的聚合。

另一方面,如果它们只是参考数据,那么使用存储库模式并不是特别重要。您需要 一些 类型的实现隐藏边界,以便您的应用程序与如何访问参考数据的细节隔离开来,但该边界并不特别需要是 存储库.