Java 从Hibernate 4.3.1切换到5.0.6,事务消失

Java 从Hibernate 4.3.1切换到5.0.6,事务消失,java,hibernate,netbeans,jar,transactions,Java,Hibernate,Netbeans,Jar,Transactions,我正在做一个Hibernate项目,我使用了Hibernate4.3.1的Netbeans库。然后我需要使用ApacheLucene进行全文搜索。为了能够使用Lucene,我需要切换到Hibernate 5.x jars。我可以定义一个新的Transaction对象,但是wasRollecBack类的Transaction方法不起作用。我在好几个地方用过这种方法,现在我被卡住了。当我看Hibernate 5.0.6的javadoc时,没有任何东西像org.Hibernate.transactio

我正在做一个Hibernate项目,我使用了Hibernate4.3.1的Netbeans库。然后我需要使用ApacheLucene进行全文搜索。为了能够使用Lucene,我需要切换到Hibernate 5.x jars。我可以定义一个新的
Transaction
对象,但是
wasRollecBack
类的
Transaction
方法不起作用。我在好几个地方用过这种方法,现在我被卡住了。当我看Hibernate 5.0.6的javadoc时,没有任何东西像
org.Hibernate.transaction
。有
org.hibernate.engine.transaction
,但它也不起作用


当我回到4.3.1
wasrollledback
时,它正在工作,但这次我无法运行带有lucene库的项目。我很困惑

wasrollledback
方法不包括在
Hibernate 5.0.6
版本
事务
界面中

4.3.1
方法中发生的版本被回滚

现有方法:

public interface Transaction {

    void begin();

    void commit();

    void rollback();

    TransactionStatus getStatus();

    void registerSynchronization(Synchronization synchronization) throws HibernateException;

    void setTimeout(int seconds);

    int getTimeout();

    void markRollbackOnly();

 }
我没有测试,但是您可以使用
getStatus
方法

例如:

    TransactionStatus transactionStatus = session.getTransaction().getStatus();
    if(transactionStatus.equals(TransactionStatus.ROLLED_BACK)){
        //action s.a :)
    }
编辑1:

TransactionStatus
Enum常量和说明:

活动:事务已开始,但尚未完成

已提交:交易已成功完成

提交:状态代码,指示已开始提交的事务 两阶段提交协议的第二阶段,但尚未完成 这个阶段

提交失败:事务试图提交,但 失败了

已标记的\u回滚:事务已标记为仅回滚

未激活:交易尚未开始

回滚:事务已回滚

回滚:状态代码,指示处于 后退的过程


您所说的.wasrollledback不工作是什么意思?找不到符号。似乎不在那里。请检查我的答案。对不起,我有点忙。我看了你的答案,它奏效了。我看了javadoc,但似乎跳过了枚举。非常感谢。