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);//事务提交
相关推荐
平凡的Joe7 分钟前
Quarkus WebSocket 入门实践
java·后端
GreatSQL9 分钟前
5.7到8.0版本升级导致备份导入失败:提示 "超过行长度"
后端
x***J34811 分钟前
后端服务限流算法,计数器与滑动窗口
java·开发语言
Java水解13 分钟前
【SpringBoot】37 核心功能 - 高级特性- Spring Boot 中的 自定义 Starter 完整教程
后端
踏浪无痕16 分钟前
Maven父子模块Deploy的那些坑
后端·maven
bcbnb20 分钟前
iOS 应用上架全流程实战解析,从证书到审核的完整开发者指南
后端
-大头.39 分钟前
响应式编程实战:WebFlux与RSocket深度解析
java·开发语言
master_hl1 小时前
基于 Kafka 与时间轮实现高性能延迟消息
后端
a***13141 小时前
python的sql解析库-sqlparse
android·前端·后端
.豆鲨包1 小时前
【Android】深入理解Activity的生命周期和IntentFilter
android·java