spring中事务执行完成后/回滚后执行
有时候业务场景需要 在事务结束后执行一些更新操作; 或者在事务失败回滚后执行一些更新表状态的操作; 就可以用到如下代码:
@Transactional(rollbackFor = Exception.class)public void except() {//事务完成后提交TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {//提交后, 指正常结束@Overridepublic void afterCommit() {//doSomething};//执行完成后, 可以是提交 也可以是回滚@Overridepublic void afterCompletion(int status) {if (status == TransactionSynchronization.STATUS_ROLLED_BACK) {log.info("=============!回滚===================");//do}}});}
spring中事务执行完成后/回滚后执行相关推荐
- java jdbc 回滚_java_详解Java的JDBC API中事务的提交和回滚,如果JDBC连接是在自动提交模式 - phpStudy...
详解Java的JDBC API中事务的提交和回滚 如果JDBC连接是在自动提交模式下,它在默认情况下,那么每个SQL语句都是在其完成时提交到数据库. 这可能是对简单的应用程序,但有三个原因,你可能想关 ...
- MySQL中事务的提交和回滚机制
应用场景: 银行取钱,从ATM机取钱,分为以下几个步骤 1 登陆ATM机,输入密码: 2 连接数据库,验证密码: 3 验证成功,获得用户信息,比如存款余额等: 4 用户输入需要取款的金额,按下确认键: ...
- Spring transaction事务之roll back回滚: rollback-for
试验方法: 写一个单元测试,调用一个service层方法(发生对数据库进行写操作的方法--insert.update.delete)即可. applicationContext.xml 样子(如何设置 ...
- 事务执行sql脚本,错误后回滚
1.手动commit,rollback -- 开启事务 START TRANSACTION; -- 关闭自动提交 SET autocommit = 0;-- 要执行的sql INSERT INTO ` ...
- mysql事务回滚后,自增ID仍然增加
事务回滚后,自增ID仍然增加 回滚后,自增ID仍然增加. 比如当前ID是7,插入一条数据后,又回滚了. 然后你再插入一条数据,此时插入成功,这时候你的ID不是8,而是9. 因为虽然你之前插入回滚,但是 ...
- Spring事务总结(一) 内部调用事务失效、异常回滚
Spring事务总结(一) 内部调用事务失效.异常回滚 参考文章: (1)Spring事务总结(一) 内部调用事务失效.异常回滚 (2)https://www.cnblogs.com/gss128/p ...
- Spring事务专题(四)Spring中事务的使用、抽象机制及模拟Spring事务实现
前言 本专题大纲如下: 事务专题大纲 「对于专题大纲我又做了调整哈,主要是希望专题的内容能够更丰富,更加详细」,本来是想在源码分析的文章中附带讲一讲事务使用中的问题,这两天想了想还是单独写一篇并作为事 ...
- Spring中事务的使用、抽象机制及模拟Spring事务实现
本文大纲如下: Spring事务应用大纲 编程式事务 Spring提供了两种编程式事务管理的方法 使用 TransactionTemplate 或者 TransactionalOperator. 直接 ...
- 事务例子_Spring事务专题(四)Spring中事务的使用、抽象机制及模拟Spring事务实现...
Spring中事务的使用示例.属性及使用中可能出现的问题 前言 本专题大纲如下: 「对于专题大纲我又做了调整哈,主要是希望专题的内容能够更丰富,更加详细」,本来是想在源码分析的文章中附带讲一讲事务使用 ...
最新文章
- 设计模式5 行为模式
- opencv中在图片上显示文本
- Microsoft SQL Server Desktop Engine安装过程中遇到的问题(2)
- mysql select high_priority_MySQL进阶SELECT语法篇
- 用到f6的快捷键_让你的办公效率成倍翻得快捷键。
- NJUPT【电工电子基础实验】
- animation之二,使用xml控制animat…
- 12306查询车票信息返回的数据解析
- 我的Blog——python封装为exe的注意事项(封装exe看这一篇基本就够了)
- ajax打开新窗口被浏览器拦截的解决办法
- 接触webGl(three.js)之全景(VR)看房的实现旅程总结
- STM32驱动_cc2420
- c语言学生信息结构体录入文件,C语言—学生信息管理系统
- zookeeper添加ip白名单
- Win7 IE11、Flash插件、.NET Framework组件 安装教程
- C++ upper_bound()和lower_bound()(二分查找中使用)的定义,使用方法和区别
- vue2数据双向绑定的原理
- 解决win10下安装typescript后仍报“tsc不是内部或外部命令...”的问题
- 计算机英语单词练习二
- dns安全 涉及 术语