gpt4 book ai didi

hibernate - 为什么不推荐 HibernateDaoSupport?

转载 作者:IT老高 更新时间:2023-10-28 13:01:43 24 4
gpt4 key购买 nike

我最近一直在使用 Hibernate 3.5 和 Spring 3 做一些工作,我对 Hibernate 还很陌生,并认为 Spring 中的 HibernateDaoSupport 类使得在我的域中使用 Hibernate 变得既好又容易类。

但是,在搜索一个不相关的问题时,我看到有人提到 HibernateDaoSupport 不是使用 Spring 和 Hibernate 的最佳方式。任何人都可以阐明:

  • 为什么不推荐?
  • 集成 Hibernate 和 Spring 的最佳(或至少是公认的)方法是什么?

最佳答案

不推荐使用 HibernateDaoSupport/HibernateTemplate,因为它没有必要将您的代码与 Spring 类联系起来。

在旧版本的 Hibernate 中使用这些类是不可避免的,以便集成对 Spring 管理的事务的支持。

但是,从 Hibernate 3.0.1 开始,您不再需要它 - 您可以在使用 Spring 管理的事务时针对普通的 Hibernate API 编写代码。您只需要配置 Spring 事务支持,注入(inject) SessionFactory 并在需要使用 session 时对其调用 getCurrentSession()

HibernateTemplate 的另一个好处是异常翻译。没有 HibernateTemplate 可以通过使用 @Repository 注释来实现相同的功能,如 Gareth Davis 的回答所示。

另请参阅:

关于hibernate - 为什么不推荐 HibernateDaoSupport?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5104765/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com