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);//事务提交
相关推荐
XIAEE24 分钟前
一个即时通讯项目是怎么长出来的:(Spring Boot 3 + Vue 3 微前端 + 悟空 IM + LiveKit)
java·spring
雾行0x0028 分钟前
粗排:如何在毫秒级筛出值得精排的内容?
后端·架构
D1213829 分钟前
从零用 C++17 写一个 API 网关:线程模型、控制面分离,以及三个真实 Bug
后端
Scene21630 分钟前
AgentScope Java 进阶:2.如何精准定义问题类型与处理“不确定性”?
后端
用户3459668152130 分钟前
在嵌入式 Linux 摄像头上跑 WebRTC:metaRTC 8.0 的 8 个坑与解法
后端
n876531 分钟前
Playwright Java WEB UI 自动化实现框架与逻辑
java·前端·ui
Java_AI工程师31 分钟前
Spring4 / SpringBoot1.x 老项目想接入 AI?不用升级框架!3 套无痛落地方案
java·人工智能·spring boot
BBmmo32 分钟前
Java Stream 的 filter 为什么看起来没运行?
java
今天早睡33 分钟前
用 State、Reducer 和条件边搭出可控循环
后端
站大爷IP34 分钟前
Python的字符串格式化把我坑惨了,原来f-string和format的区别这么大
后端