有时候事物Spring 事物不回滚 注意点
假设 methodA 函数 里面调用除了自己的业务逻辑 还有 methodB 方法
1 想要回滚 try catch 中抛出 一个异常(默认是运行时异常)
2 增加 @Transactional(readOnly = false,rollbackFor = Exception.class)
3 两个方法都要抛出异常 要么 1自己捕获抛出,2要么向上抛出
/***
* 第1业务个sql
*/
@Transactional(readOnly = false,rollbackFor = Exception.class)
public void methodA() {
try {
//update 修改SQL1业务
String a = "UPDATE TABLE1 SET FirstName = 'Fred' WHERE LastName = 'Wilson'";
this.methodB();//修改SQL2
} catch (Exception e) {
throw new RuntimeException();//抛出异常
}
}
/**
* 第二个业务sql
*/
public void methodB() {
try {
// update 修改SQL2业务
String b = "UPDATE TABLE2 SET FirstName = 'Fred' WHERE LastName = 'Wilson'";
} catch (Exception e) {
throw new RuntimeException(e);//抛出异常
}
}
相关推荐
Spring中的@Transactional事物回滚实例源码
NULL 博文链接:https://sunfish.iteye.com/blog/1534890
Spring中的JdbcTemplate,Spring中的的事务.。。。。。。。
模拟订单和库存的一个简单案例实现,注册到nacos配置中心,通过feign远程调用模拟异常进行全局事物回滚。 内含sql文件,nacos、seata安装包以及对应seata配置所需的script脚本(也可自行官网下载) ...
主要介绍了Spring异常捕获且回滚事务解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
spring boot 纯注解方法事务控制回滚,注解+简单配置文件使用多线程demo
spring4.0和hibernate4.0框架的标准整合,此框架实现了hibernate根据实体自动创建表(前提是你要在mysql中创建名为testspring的库),spring的aop拦截功能,帮助了解aop,和spring事物控制,异常回滚以及junit4的测试...
面试必考之HashMap源码分析与实现 ,微服务架构之Spring Cloud Eureka 场景分析与实战,高性能必学之Mysql主从架构实践 ,架构师不得不知道的Spring事物不能回滚的深层次原因 ,分库分表之后分布式下如何保证ID全局...
HashMap源码分析与实现、JVM底层奥秘ClassLoader源码分析与案例讲解、大型...Spring事物不能回滚的深层次原因、高性能必学之Mysq1主从架构实践、分布式框架Zookeeper之服务注册与订阅、互联网系统垂直架构之Session解决...
2.本代码采用的是 apache-maven-3.3.9 eclipse Mars.2 Release (4.5.2) jdk 1.8 tomcat 8 mysql 5.1 3.本代码是一个整合spring+... 2)验证了事物回滚配置的正确性 3)还没有正式涉及springMvc的常用配置
2017卧底面试题答案解析.txt 包含有 SpringMvc深入理解源码分析 高性能网络编程必备技能之IO与NIO阻塞分析 ...架构师不得不知道的Spring事物不能回滚的深层次原因 大型公司面试必答之数据结构与算法精讲 ... 等
用springboot 集成mybatis多数据源,用aop实现的动态切换,支持事务,不会使aop动态切换失效。注意:此代码不涉及分布式事务,如果需要分布式事务 需要采取其他方案。
2、spring声明式事物只回滚运行期异常 3、使用注解控制事物方法的优点: (1) 开发团队达成一致约定,明确标注事务方法的编程风格 (2) 保证事务方法的执行时间尽可能短,不要穿插其他网络操作,如RPC/HTTP请求 或者...
架构师不得不知道的Spring事物不能回滚的深层次原因.mp4 │ │ │ ├─13.RPC底层通讯原理之Netty线程模型源码分析 │ │ 13.RPC底层通讯原理之Netty线程模型源码分析.wmv │ │ │ ├─14.分库分表之后分布式下...
测试可以利用spring的注入功能,引入spring的事物管理,而且对于测试的数据还可以支持回滚,保存数据 velocity-1.6.2.jar velocity-1.6.2-dep.jar velocity-tools-1.4.jar velocity-tools-view-1.4.jar velocity...
声明式事物 93 编程式事务 94 【Spring】Spring声明式事务的五个特性 94 传播性 94 隔离级别 95 只读 96 事务超时 97 回滚规则 97 【Spring】SpringMVC请求处理流程 97 【Mybatis】MyBatis中使用#和$书写占位符有...