1

您可以使用实体方法遍历实体,并且可以使用实体存储库执行完全相同的操作,不同之处在于您将创建额外的类并将其附加到实体上,并且存储库也会对其他开发人员造成某种混淆,以了解是否有某种方法可用,他们将需要检查实体和存储库。

还有其他区别吗?使用自定义存储库有什么好处吗?或者处理这种情况的最佳做法是什么?

4

1 回答 1

7

一般来说:

  • 实体中的方法应该只连接到这个特定的实体对象(例外是具有关系的 getter / setter)。

  • 存储库中的方法应连接到整个实体类

例如:如果你有一个 Article 实体,你可以在实体内部创建“slugify”方法,因为你想从这个特定对象的标题中生成 slug。

但是,如果您需要,比如说,获取所有超过一年的文章 - 您将在存储库中创建这样的方法(因为它与任何特定对象无关)

于 2012-10-17T08:09:17.807 回答