DAO可以保存状态信息

hak*_*ish 1 java design-patterns java-ee

可能这听起来有点平凡,有人可以告诉我,如果有任何好的做法,说DAO不应该存储状态信息,即非静态非最终成员变量?我遇到的大多数DAO主要包含静态变量和最终变量.

public class CustomerDAO extends CommonDAO{

private String txnid;
private String txnName;

getters....setters..
}
Run Code Online (Sandbox Code Playgroud)

kos*_*tja 6

对我来说,DAO"只是一个管道",用于封装数据库通信.它构造并执行查询或/和代理EntityManager,因此至少对于JPA,除了EntityManager实例之外不需要任何状态.查询不直接相互依赖.

所以我会反过来提出问题 - DAO有什么明智的状态?