CSDNRGY 2017-02-06 09:32 采纳率: 88.2%
浏览 1003
已采纳

为什么我无法通过spring管理hibernate的事务?

下面这段代码有什么问题吗?

为什么无法自动开启事务并提交?

spring想管理hibernate的事务,也就是通过这几行代码就可以了吧?

通过spring管理事务,执行后没有任何的效果,我觉得应该是事务没有提交的事

不过是否开启也不确定,如何能排查出问题原因呢?

     <!-- spring接管事务 -->          
    <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory"></property>
    </bean> 
    <!-- 事务增强 -->
    <tx:advice id="txAdvice" transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="*"/>
        </tx:attributes>
    </tx:advice>
    <!-- 使用aop自动开启/提交事务 -->
    <aop:config>
        <aop:pointcut expression="execution(* com.web.service.*.*(..))" id="serviceMethod"/>
        <aop:advisor advice-ref="txAdvice" pointcut-ref="serviceMethod"/>
    </aop:config>

图片说明

  • 写回答

2条回答 默认 最新

  • CSDNRGY 2017-02-08 08:30
    关注

    原来的代码

     Session session = sessionFactory.openSession();
    

    现在的代码

     Session session = sessionFactory.getCurrentSession();
    

    用getCurrentSession可以开启事务,不知道为什么openSession不可以

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 (标签-STM32|关键词-智能小车)
  • ¥20 关于#stm32#的问题,请各位专家解答!
  • ¥15 (标签-python)
  • ¥20 搭建awx,试了很多版本都有错
  • ¥15 java corba的客户端该如何指定使用本地某个固定IP去连接服务端?
  • ¥15 activiti工作流问题,求解答
  • ¥15 有人写过RPA后台管理系统么?
  • ¥15 Bioage计算生物学年龄
  • ¥20 如何将FPGA Alveo U50恢复原来出厂设置哇?
  • ¥50 cocos2d-x lua 在mac上接入lua protobuf?