spring 是如何开启事务的, 核心原理是什么

文章目录

    • [spring 是如何开启事务的](#spring 是如何开启事务的)
      • 核心原理
      • [1 基于注解开启事务](#1 基于注解开启事务)
      • [2 基于代码来开启事务](#2 基于代码来开启事务)

spring 是如何开启事务的

核心原理

Spring事务管理的实现有许多细节,如果对整个接口框架有个大体了解会非常有利于我们理解事务,下面通过讲解Spring的事务接口来了解Spring实现事务的具体策略。

Spring事务管理涉及的接口的联系如下:

spring开启事务有两种:

1 基于注解开启事务

只需要在方法头上加一个注解@Transactional即可:

2 基于代码来开启事务

在需要开启事务的方法中,输入以下代码即可:

java 复制代码
@Autowired
private PlatformTransactionManager txManager;
// 开启事务管理
    DefaultTransactionDefinition def = new DefaultTransactionDefinition();
    def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);
    TransactionStatus status = txManager.getTransaction(def);
    try {
         //操作都放在这里
    }catch(Exception e){
       //这里是异常处理
    }
    txManager.commit(status);//事务提交
相关推荐
躺平的赶海人几秒前
C# Dictionary 线程安全指南:多线程下操作 Dictionary<string, DateTime> 的加锁策略
java·安全·c#
帧栈9 分钟前
开发避坑指南(64):修复IllegalArgumentException:参数值类型与期望类型不匹配
java·数据库
canonical_entropy9 分钟前
最小变更成本 vs 最小信息表达:第一性原理的比较
后端
渣哥10 分钟前
代理选错,性能和功能全翻车!Spring AOP 的默认技术别再搞混
javascript·后端·面试
坐不住的爱码11 分钟前
ArrayList和LinkedList的区别
java
java1234_小锋15 分钟前
什么是Java三高架构?
java·开发语言·架构
间彧26 分钟前
Java泛型详解与项目实战
后端
浓墨染彩霞30 分钟前
Java----set
java·经验分享·笔记
5pace30 分钟前
【JavaWeb|第一篇】Maven篇
java·maven
间彧36 分钟前
PECS原则在Java集合框架中的具体实现有哪些?举例说明
后端