DAO 最佳实践:查询父/子

Posted

技术标签:

【中文标题】DAO 最佳实践:查询父/子【英文标题】:DAO Best practices : Querying Parent / Children 【发布时间】:2010-12-18 06:59:45 【问题描述】:

假设您有一个具有简单父/子关系的域模型,并且每个实体都有自己的关联 DAO,例如:

Author
AuthorDAO
Book
BookDAO

如果我想添加一个 DAO 方法来检索特定作者的书籍,它的最佳位置是什么?

class AuthorDAO

    List<Book> getBooks(Author author);

class BookDAO

    List<Book> getBooks(Author author)

【问题讨论】:

【参考方案1】:

我会在BookDAO 上放置一个Book finder。无论其参数如何,这都是我所期望的。如果你想找一本书,你不想扫描所有的 DAO 来找到正确的查找器在哪里。把它放在其他地方不会帮助 API 的用户。

【讨论】:

【参考方案2】:

BookDAO,因为您想获取有关书籍的信息。 Book 是这里的主要主题。

【讨论】:

以上是关于DAO 最佳实践:查询父/子的主要内容,如果未能解决你的问题,请参考以下文章

Rails 4+ 最佳实践:删除父项同时保留子项

DB2 子查询最佳实践

DAO 级别布尔方法的最佳实践

DAO 实施的最佳实践

目前持久性的最佳实践是啥?

Vue子组件中调用方法的最佳实践