springboot 手动开启事务及手动提交事务

springboot 开启事务以及手动提交事务

注入依赖:
@Resource
DataSourceTransactionManager dataSourceTransactionManager;
@Resource
TransactionDefinition transactionDefinition;

手动开启事务
TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
手动提交事务
dataSourceTransactionManager.commit(transactionStatus);//提交
手动回滚事务
dataSourceTransactionManager.rollback(transactionStatus);//最好是放在catch 里面,防止程序异常而事务一直卡在哪里未提交

这种方式避免了像套娃似的层层使用事务注解@Transactional,使用起来更灵活。

原文地址:https://www.cnblogs.com/Sandheart/p/14679913.html