gpt4 book ai didi

java - 将真正特定的方法放入 DAO 类中是否正确?

转载 作者:行者123 更新时间:2023-12-02 02:23:31 25 4
gpt4 key购买 nike

我读过的有关 DAO 类的所有示例仅显示具有非常通用方法的 DAO 类,例如 insertNewCar()、deleteCar()、updateCar()、getCars()、getCarByID()。但是我可以将更具体的方法放入 DAO 类中吗? 就我而言,我需要获取今天轮类的所有医生,并且要知道,我必须获取日期等于今天的所有医生的时间表。现在,我通过 doctorDAO 类中名为 getDoctorsWorkingToday(ArrayList schedulesToday) 的单一方法获取这些医生。在这个方法中,我首先从数组列表中获取所有医生的 id,并将它们添加到完整的 sql 查询中。该方法的其余部分就像普通的“获取”方法一样:我使用查询来获取我想要的所有医生,将它们放入数组列表中并返回它。 它工作得很好,但是这个解决方案可以接受吗?或者我必须只在 DAO 类中使用通用方法,如 getAllSchedules() 和 getAllDoctors(),并在其他类中执行所有过滤操作?

最佳答案

根据我的理解,我通常将所有数据库特定代码(查询)放在 DAO 中,并将事务处理和业务逻辑放在服务层中。这允许服务方法跨多个 dao 调用方法并将其全部保留在同一事务中。在我看来,这允许在 dao 之间更好地重用代码。

就你而言,在 Service 层中使用“get”方法业务逻辑,并在 dao 中使用查询相关内容。

如何实现服务和 dao 由您决定。只是为了流程和易于理解,我们遵循标准。

关于java - 将真正特定的方法放入 DAO 类中是否正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48124766/

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