DAO架构方法:基于HibernateDaoSupport或EntityManager

时间:2015-07-15 09:19:40

标签: java spring hibernate jpa

我想以同样的方式管理所有DAO:

1)使用保存,更新,删除等实体操作创建一个基类 2)每个DAO继承基类并执行基类操作 3)所有实体也将有一个根。

public abstract BaseDao {
...
   @Transactional
   public T update(T entity) throws DataAccessException {
       getHibernateTemplate().update(entity);
       return entity;
   }
}
...
public MemberDao extends BaseDao {
...
   @Override
   @Transactional
   public IMember update(IMember member) throws DataAccessException {
       super.update(member);
       return member;
   }
}

并且有两种可能的方式:

1)基于HibernateDaoSupport and getHibernateTemplate()
2)基于getEntityManagerFactory().createEntityManager()

主要问题是基于 hibernateTemplate entityManager 的方法 - 哪些方法更好用?

在两种情况下,基础JPA提供者都是Hibernate。

0 个答案:

没有答案