Jam*_*hon 5 language-agnostic persistence encapsulation dao
是否更好地将连接封装在DAO中,即让DAO创建或检索连接然后关闭,或者最好将连接传递到DAO并处理DAO外部代码中的详细信息?
后续:如果将连接封装在DAO中,如何管理关闭连接?
小智 3
DAO 应该执行 CRUD 操作并对调用者隐藏这些操作。所以你应该封装连接。
另一方面,如果上层正在协调 DAO(例如事务),那么您还可以将连接传递到 DAO(并在打开它的同一级别关闭它,而不是在 DAO 中)。
底线是......这实际上取决于应用程序每一层的职责。调用者是否应该关心 DAO 在哪里检索数据?如果没有,则封装连接。