CSDNRGY 2017-02-06 09:32 采纳率: 87.5%
浏览 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 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64