0

我试图了解 HibernateDAOSupport 提供的优于 HibernateTemplate 的好处。HibernateTemplate 几乎可以做所有事情。那为什么我们需要扩展 HibernateDAOSupport 和 getHibernateTemplate 并进行操作,而不是注入 hibernateTemplate 并进行操作。当 DAO 类扩展 HibernateDAOSupport 时,我们得到了什么好处。

我知道不建议再使用 HibernateDAOSupport 和 HibernateTemplate,而只是想了解它们的区别。

4

1 回答 1

0

这是浏览 API 后的一些猜测工作:

看起来一开始有一个 HibernateTemplate 完全隐藏了会话,如果您需要访问 Session DaoSupport 会为您提供。

来自 HibernateDaoSupport JavaDoc:

这个基类主要用于 HibernateTemplate 使用,但也可以在直接使用 Hibernate Session 时使用,例如在依赖事务 Sessions 时。为该使用风格提供了方便的 getSession() 和 releaseSession(org.hibernate.Session) 方法。

但是getSessionDaoSupport 中的方法现在已经被 HibernateSession 弃用了,它现在的方法基本相同。因此,您在模板中没有得到的 DaoSupport 中唯一剩下的似乎是也已弃用的 releaseSession,但我在 HibernateTemplate API 中找不到它。

tl;博士;

这些只是很久以前的遗留物。如果您不是考古学家,请不要担心。

于 2015-06-14T08:14:31.300 回答