gpt4 book ai didi

java - DAO 命名约定

转载 作者:搜寻专家 更新时间:2023-11-01 03:25:10 26 4
gpt4 key购买 nike

我正在开发一个需要与数据库建立连接的应用程序。要通过此连接进行操作,我使用的是 DAO 模式。我的问题与代码的组织以及接口(interface)和实现的名称有关。当前的包结构是下一个:

  • mainpackage
  • mainpackage.model -> Models of each table to create objects with data fetched from DB
  • mainpackage.persistence -> ConnectionManager
  • mainpackage.persistence.dao -> Interfaces and implementations

关于接口(interface)的命名,只要我不知道如何命名,我认为使用 ClassDAO 和 DefaultClassDAO 之类的东西来实现是个好主意。你怎么认为?这有什么约定吗?

最佳答案

我会使用“领域驱动设计”中描述的约定。

  • 主包
  • mainpackage.model -> 包含“存储库”作为接口(interface),如 UserRepository、ProfileRepository 描述了在存储中管理实体的操作(存储、查找等)。这样您就不会泄露您的存储是一个数据库。
  • mainpackage.model.db(或 sql 或其他)-> 包含 SqlUserRepository、SqlProfileRepository 实现 mainpackage.model 中的接口(interface)并访问数据库。

您甚至可以将数据库类放在不同的子项目中。我认为重要的是不要将数据库放在设计的中心,而只是将其视为实现细节。

关于java - DAO 命名约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15883961/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com