首页 > 解决方案 > DAO 方法应该接收数据对象作为参数还是仅接收其内容?

问题描述

我正在考虑 DAO 的两种不同方法,我想知道哪种方法更正确。假设我们有以下类:

public class Employee {

private int id;
private String name;

//getters and setters

}

DAO 有以下两种方法:

一个)

public class EmployeeDao {

    public Employee insert(int id, String name) {
    ...
    }

二):

public class EmployeeDao {

    public Employee insert(Employee employee) {
    ...
    }

我的问题是这两种方法是否正确和/或其中一种方法是否比另一种更正确。

感谢您的关注。

标签: design-patternsdao

解决方案


我觉得这个方法更好

public class EmployeeDao {

    public Employee insert(Employee employee) {
       //Operations
    }

因为如果你想为 DAO 的操作添加新的属性,这个方法保持 dao 的实现不变,而不是第一个方法强制你做这样的事情,如果 dao 很多,它就会变得受限

public class EmployeeDao {

    public Employee insert(int id, String name, Object otherObject) {
       //Operations
    }

推荐阅读