我有一个基本的问题。
我一直在创建关注点分离的DAO。每个DAO都专注于上下文中的BusinessObject。我的问题是在另一个DAO中使用一个DAO方法。我假设这是错误的,但没有足够的数据支持。
情况是这样的。
EmpDAO:
getEmp(empId)
getEmps(deptId)
getEmps(deptName)使用下面的实现有什么问题
getEmps(deptName):
// Assume this is cached and there is no question of two N/w calls and having any gain by joins
DeptDAO.getId(deptName)
getEmps(deptId)在EmpDAO中使用DeptDAO会出什么问题?或者,我不应该在另一个DAO中调用DAO的要点是什么。
关于Amod
发布于 2013-10-24 20:07:09
不鼓励在另一个DAO中调用DAO。为什么你的服务不能完成这项工作?像这样的服务方法:
public void combinedServiceWork(String deptName) {
long deptId = DeptDAO.getId(deptName);
EmpDAO.getEmps(deptId);
}在EmpDAO中去掉了getEmps(deptName);
发布于 2013-10-24 20:04:26
我不知道你从哪里得到的信息。你能提供一个引证,告诉你这是一个如此令人发指的错误吗?这可能是一种手动编写一对多关系的方法。
我有更多的问题,使这些静态。
https://stackoverflow.com/questions/19565394
复制相似问题