`

不回滚的原因查找

 
阅读更多
偶然发现系统有块功能出异常了数据库update没有回滚,看了代码,自己做了实验。两种情况:
第一种:
@Override
public void overDueDeductSuccess2() throws Exception {
updateRepayData2();
throw new NullPointerException();
}

private void updateRepayData2() throws Exception {
String sql = "update t_customer t set t.real_name='齐霖一1' where t.id=5413";
jdbcDao.execute(sql);
}


controller层调用了service层的overDueDeductSuccess2方法,service层类上面加了@Transactional(rollbackFor = Exception.class) 测试结果回滚了。

第二种:service层层调用,中间有个service 没有加@Transactional,是普通类 也没有实现接口,也回滚了
第三种:发现了update完了以后进行了flush();
第四种:发现最后一个service上面只写了@Transactional,没有rollbackFor = Exception.class
最后发现这几种情况都回滚了,好吧
分享到:
评论

相关推荐

    struts实现文件归档及回滚

    当需要回滚时,根据指定的版本号查找对应的文件内容并恢复。 四、具体实现步骤 1. 创建Action:首先,你需要创建一个处理文件操作的Struts Action,比如`FileArchiveAction`和`FileRollbackAction`。 2. 文件上传:...

    1394B SP2回滚 RollBack文件

    标题 "1394B SP2回滚 RollBack文件" 指的是针对1394B(FireWire ...如果回滚后问题仍然存在,或者出现了新的问题,那么可能需要寻求其他解决方案,如查找驱动程序的替代版本,或者联系硬件制造商的技术支持获取帮助。

    第4课 回滚.pdf

    如果事务回滚,Oracle会查找对应的回滚信息,并将数据恢复到回滚前的状态。 总结来说,Oracle的回滚和重做机制是其事务处理能力的关键,它们保证了数据的准确性和一致性。回滚用于撤销未提交的事务修改,而重做则...

    spring-控制事物回滚

    - 当方法抛出异常时,Spring会查找是否匹配`rollbackFor`或`noRollbackFor`属性中的异常类型,从而决定是否回滚事务。异常匹配是精确匹配,不考虑异常的子类。 7. **Test_jdbc_tran**: - 压缩包中的`Test_jdbc_...

    46 一起来看看INSRET语句的undo log回滚日志长什么样?l.pdf

    首先,回滚日志包含了日志的开始位置,这是为了标识回滚日志的起始点,方便进行查找和操作。 其次,回滚日志会记录主键的各列长度和值。主键是数据库表中每条记录的唯一标识,无论是手动设定还是由数据库自动创建的...

    mongoDB 4.0事务回滚的辛酸历程探究

    在回滚时,系统可能通过会话标识查找副本集中的数据快照,然后将该快照应用于主节点,以恢复到事务开始前的状态。然而,实际的过程远比这个描述复杂,涉及到多版本并发控制、日志和复制集间的协调。 参考链接可以...

    ADO实现数据回滚事物+DBGrid选中多行处理

    1.QQ:513187410 2.保证无毒 3.简单,方便,实用 4.实例可以自行改用 5.如有非法,本人无法律责任,由改动代码人负责! 6.需要更多本人作品,查找标签“朱建强” 7.请下载,杀毒后再使用!

    laravel 执行迁移回滚示例

    这个命令会在 `/database/migrations` 目录下查找最近的迁移文件,并执行相应的回滚操作。 - 如果你想要针对特定文件夹下的迁移进行回滚,可以指定路径,如:`...

    .NET framework 4.0 安装失败回滚问题

    根据微软论坛作者的英文解释,.NET framework 4.0 安装失败回滚貌似是因为“msvcr100_clr0400.dll”文件不能被覆盖的原因导致的,那么问题就简单了,我们只要把C盘下面的两个文件重命名就ok了。 具体文件路径如下...

    java源码期编译器运行时-Prism:Prism-基于Sponge的Minecraft服务器的悲伤预防和回滚

    服务器的回滚/恢复悲伤预防插件。 Prism 3.x 已为 Sponge 完全重写。 现在还处于开发过程的早期,但我们正在努力超越我们自己的标准。 因此,我们的功能集正在增长。 提出问题或在 IRC 中告诉我们什么对您很重要。 ...

    文件变动查找工具

    - 开发者追踪代码仓库中的更改,以了解项目进展或回滚错误修改。 - 系统管理员定期检查系统日志文件,以便及时发现和解决问题。 - 普通用户找回误删或修改的文件,或者确保备份的完整性。 总的来说,文件变动查找...

    jquery中each循环的简单回滚操作

    具体到本文中,回滚操作指的是在each循环执行过程中遇到某个条件不满足时,通过某种手段撤销之前的操作,从而保证数据的一致性和程序的正确运行。在jQuery的each方法中,通常通过中断循环来实现回滚操作。 根据文章...

    电脑开不了机的原因汇总

    ### 电脑开不了机的原因及解决方法 当我们的电脑无法启动时,这无疑是一件令人沮丧的事情。电脑开不了机可能由多种原因造成,涉及到硬件故障、电源问题、系统错误等多方面因素。以下是对“电脑开不了机的原因汇总”...

    sql server误操作日志还原工具

    安装这个软件后,用户可以利用其功能来查找并恢复误操作。 "使用说明.txt" 文件应包含了如何使用ApexSQL Log的详细步骤,包括如何连接到SQL Server实例,查看日志,选择要回滚的事务,以及如何执行恢复操作等。这是...

    sqlserver中查找长时间未提交事务[总结].pdf

    同时,对事务日志进行备份也只会截断不活动事务的那部分事务日志,所以打开的事务会导致日志变多(甚至达到物理限制),直到事务被提交或回滚。 要找到最早的活动事务,可以使用 DBCC OPENTRAN 命令。DBCC OPENTRAN...

    RapidFinder 实现文件的查找和替换.zip

    在现代计算机系统中,文件的查找和替换功能是不可或缺的一部分。RapidFinder,作为一个以C#语言实现的工具,旨在提供快速且高效的文件搜索和内容替换服务。本文将深入探讨RapidFinder的核心技术和实现原理,以及涉及...

    oracle undo

    这种问题的原因是由于事务没有提交,或者是undo_retention 时间设置不当,导致 undo 块不能被重用。 解决 undo 段急剧增大问题的方法 解决 undo 段急剧增大问题的方法有多种,例如,调整 undo_retention 的时间,...

    oracle专家的培训资料

    反之,Oracle会从回滚段中查找相应的历史数据来构建一个一致性的视图。 #### 七、回滚段与SGA的关系 回滚段的块实际上也是SGA(System Global Area)的一部分,存储在数据缓冲区中。可以通过查询内部表`x$bh`来...

Global site tag (gtag.js) - Google Analytics