gpt4 book ai didi

java - getHibernateTemplate().flush() 和 getSession().flush() 有什么区别

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:45:01 26 4
gpt4 key购买 nike

我正在使用 Hibernate 3.2.6。我正面临异常(exception)情况

save the transient instance before flushing

在我的代码中,有时我们在一个事务中使用 getSession().flush(),有时我们使用 getHibernateTemplate().flush()

你能告诉我这两者有什么区别吗?

最佳答案

HibernateTemplate是不推荐使用的 Spring 代码,从 Spring 移动到注释作为事务管理的首选方法之前的日子。它不是 Hibernate 本身的一部分。模板代码抽象出创建、提交和回滚事务的机制,允许开发人员只专注于他们的业务逻辑。 HibernateTemplate 现在被 Spring 社区认为是多余的,并且在 Spring 对 Hibernate 4 的支持中被完全删除。

来自官方文档:

NOTE: As of Hibernate 3.0.1, transactional Hibernate access code can also be coded in plain Hibernate style. Hence, for newly started projects, consider adopting the standard Hibernate3 style of coding data access objects instead, based on SessionFactory.getCurrentSession().

在过渡期间,您的代码可能是遗留代码和开发人员混合方法的大杂烩。

关于java - getHibernateTemplate().flush() 和 getSession().flush() 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21879092/

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