jpatemplate和jpadaosupport之间的区别

时间:2014-02-02 04:13:08

标签: spring dao

JpaTeplate和JpaDaoSupport(或类似版本的HibernateTemplate和HibernateDaoSupport)有什么区别。

我阅读了spring文档,并且Spring建议不要再使用它了。我很想知道背后的原因是什么。我理解的一个原因是弹簧和持久层之间的分离。但这不是解决这个问题的唯一原因。

任何人都可以对它有所了解。

提前致谢。

1 个答案:

答案 0 :(得分:1)

在早期,*Template使得使用底层技术更容易,在hibernate2和早期hibernate3版本的时代尤其如此。然而,所有这些技术都取得了进展,而*Template的使用已经不再有意义了。它只会将您的数据访问层绑定到spring而没有任何实际的额外好处。因此建议不再使用它,而是使用普通API(即直接使用JPA或Hibernate)。

*DaoSupport类会为您执行一些引导和/或检测,以便您可以调用get*Template方法并准备好使用*Template。基本上*DaoSupport可以轻松访问已配置的*Template,从而使您无需自行构建。{1}}。

但是,如参考指南中所述,您不应该使用模板,因此不再支持类(唯一的例外是JDBC版本)。