gpt4 book ai didi

java - hibernate 事务未成功启动

转载 作者:IT老高 更新时间:2023-10-28 20:25:25 25 4
gpt4 key购买 nike

考虑这个简单的 Hibernate 场景:

session = getHibernateSession();
tx = session.beginTransaction();
SomeObject o = (SomeObject) session.get(SomeObject.class, objectId);
tx.commit();

此代码产生以下异常:

org.hibernate.TransactionException: Transaction not successfully started
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:100)
at com.bigco.package.Clazz.getSomeData(Clazz.java:1234)

发生了什么事?

最佳答案

好吧,看起来一旦我们到达 tx.commit() 行,事务就已经被提交了。我唯一的猜测是,当 get() 处理对象时,Hibernate 已经提交了事务。

解决方法很简单:

// commit only if tx still hasn't been committed yet (by hibernate)
if (!tx.wasCommitted())
tx.commit();

关于java - hibernate 事务未成功启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5155039/

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