在catch中throw new RuntimeException();事务不生效,然后使用手动回滚:
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
报错如下:
org.springframework.transaction.NoTransactionException: No transaction aspect-managed TransactionStatus in scope
但是已经加@Transactional注解并且配置文件里面也配置事务管理器了
<!-- Hibernate 事务管理 -->
<bean id="transactionManager"
class="org.springframework.orm.hibernate5.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!-- 用注解来实现事务管理 -->
<tx:annotation-driven transaction-manager="transactionManager" />