手动回滚、提交事务

简介: 手动回滚、提交事务

再小的个子,也能给沙漠留下长长的身影;再小的人物,也能让历史吐出重重的叹息。——余秋雨《文化苦旅》

我们可以手动管理事务

首先需要引用两个Bean

@Resource
private TransactionDefinition transactionDefinition;
@Resource
private IArticleEnclosureService articleEnclosureService;

然后是使用

PlatformTransactionManager transactionManager = Objects.requireNonNull(transactionTemplate.getTransactionManager());
      TransactionStatus transactionStatus = transactionManager.getTransaction(transactionDefinition);
if (逻辑执行正确) {
  //提交事务
  transactionManager.commit(transactionStatus);
      } else {
          // 回滚事务
  transactionManager.rollback(transactionStatus);
          // 记录日志
          log.error(e);
      }

或者是

PlatformTransactionManager transactionManager = Objects.requireNonNull(transactionTemplate.getTransactionManager());
      TransactionStatus transactionStatus = transactionManager.getTransaction(transactionDefinition);
try{
  //提交事务
  transactionManager.commit(transactionStatus);
      } catch (Exception e) {
          // 回滚事务
  transactionManager.rollback(transactionStatus);
          // 记录日志
          log.error(e);
      }
相关文章
|
4月前
|
SQL Oracle 关系型数据库
第7章 事务
第7章 事务
27 0
|
6月前
|
存储 Java 中间件
事务一致性测试
事务一致性测试
54 0
|
6月前
|
SQL 前端开发 大数据
什么是大事务?以及大事务产生的问题
什么是大事务?以及大事务产生的问题
190 0
|
存储 Oracle 固态存储
深入理解事务
事务将应用程序的多个读、写操作捆绑在一起成为一个逻辑执行单元。即事务中的所有读写是一个执行的整体,整 个事务要么成功(提交)、要么失败(中止 或者 回滚)。如果失败,应用程序可以安全地重试。
16437 0
深入理解事务
|
人工智能 关系型数据库 MySQL
事务详解
事务是逻辑上的一组操作,要么都执行,要么都不执行。
75 0
|
SQL 存储 关系型数据库
|
SQL Java 大数据
事务详解(2)
你好看官,里面请!今天笔者讲的是事务。不懂或者觉得我写的有问题可以在评论区留言,我看到会及时回复。 注意:本文仅用于学习参考,不可用于商业用途,如需转载请跟我联系。
169 1
|
数据库
什么时候需要使用事务
什么时候需要使用事务
606 0
|
Oracle 安全 Java
事务详解(1)
你好看官,里面请!今天笔者讲的是事务。不懂或者觉得我写的有问题可以在评论区留言,我看到会及时回复。 注意:本文仅用于学习参考,不可用于商业用途,如需转载请跟我联系。
107 2
|
SQL 存储 Oracle
事务是什么
事务是什么