EntityManager和DAO有什么区别?

时间:2015-06-07 04:22:48

标签: java java-ee dao entitymanager

EntityManager和DAO有什么区别?这是一回事吗?

1 个答案:

答案 0 :(得分:2)

EntityManager是JPA提供的接口,它提供用于持久化,合并,查找和创建实体查询的通用方法。

DAO是一种模式,用于在单独的组件(DAO)中隔离数据库访问代码,以便服务集中在业务逻辑而不是低级数据库。它有助于对服务进行单元测试,并有助于分离职责。

使用JPA时,通常每个实体编写一个DAO,它将包含与该实体相关的所有JPA代码(主要是查询)。这个DAO使用EntityManager。