如何为具有多个字段的实体设计DAO类?
例如,对于以下实体:
public class MyEntity{
private long id;
private int field1;
private String field2;
private Date field3;
private Date field4;
private int field5;
}
Run Code Online (Sandbox Code Playgroud)
我应该创建一个DAO类,其中包含每个字段的更新方法,如:
public class MyEntityDao{
public insert(MyEntity myEntity);
public delete(MyEntity myEntity);
public get(long id);
public updateField1(MyEntity myEntity)
public updateField2(MyEntity myEntity)
public updateField3(MyEntity myEntity)
public updateField4(MyEntity myEntity)
public updateField5(MyEntity myEntity)
}
Run Code Online (Sandbox Code Playgroud)
这似乎是合乎逻辑的事情,但我通常只看到一个update()方法的例子.在这种情况下,DAO应该如何确定在数据库中更新哪个字段?它是否只是盲目地更新所有字段,即使只有1个可能已经改变了?或者实体类是否应将标志作为成员来指示哪些字段已更改?
您只需要传递要更新的实体,DAO 将自动确定更改的字段并将其更新到数据库中。
public update(MyEntity myEntity);
Run Code Online (Sandbox Code Playgroud)
然后DAO获取myEntity的id并更新数据库中的实体。
| 归档时间: |
|
| 查看次数: |
2270 次 |
| 最近记录: |