我有一个基本问题。

我一直在创建关注点分离的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调用。

问候
阿莫德

最佳答案

不建议在另一个DAO内部调用DAO。您的服务为何不起作用?服务方法如下:

public void combinedServiceWork(String deptName) {
    long deptId = DeptDAO.getId(deptName);
    EmpDAO.getEmps(deptId);
}


并摆脱getEmps(deptName)中的EmpDAO;

10-04 18:18