代码之家  ›  专栏  ›  技术社区  ›  Piotr

在域对象中使用DAO是否正确?

  •  2
  • Piotr  · 技术社区  · 13 年前

    article :“DAO类不应该直接从客户机(服务和其他使用者类)调用。客户机应该始终调用域对象,而域对象又应该调用DAO,以便将数据持久化到数据存储。”.

    这不是我以前做DDD时看到的事情。有什么想法吗?

    谢谢

    2 回复  |  直到 13 年前
        1
  •  1
  •   Chin Huang    13 年前

    你从文章中引用的最后一句话本可以写得更清楚。我怀疑作者的意思是(重点是我的附加文本):

    它应该称为存储库

        2
  •  1
  •   quentin-starin    13 年前

    “不应该调用DAO类 直接来自客户(服务和 其他消费类)。客户 这就应该称之为道 用于将数据持久化到数据 存储。”

    不,我认为那是完全错误的。

    域对象可能也不应该引用存储库。

    如果域对象需要与其他域对象协作,它可以引发域事件或将其他域对象作为方法的参数(在这种情况下,客户端/调用方通过存储库检索所有必需的域对象)。