注意点:

1、引入依赖

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<scope>test</scope>
</dependency>

2、@Transactional注解可加在类和方法上

3、在Spring Boot中使用@Transactional注解,需要在启动类上添加@EnableTransactionManagement注解开启事务支持

4、REQUIRED :如果当前存在事务,则加入该事务;如果当前没有事务,则创建一个新的事务。

@Transactional(propagation= Propagation.REQUIRED)@Overridepublic void trade3(String outer, String inner, Integer money) {//汇款accountService.out(outer, money);// 抛出异常int i = 1/0;//收款accountService.in(inner, money);}

参考文章

SpringBoot2.0 基础案例(12):基于转账案例,演示事务管理操作 - 知了一笑 - 博客园

Spring Boot事务控制 - piaobodeyun0000 - 博客园

springboot利用注解开启事务(银行转账案例)相关推荐

  1. SpringBoot手动开启事务:DataSourceTransactionManager

    文章目录 DataSourceTransactionManager DataSourceTransactionManager 添加事务: 传统JDBC事务管理,使用DataSource从数据源中获取c ...

  2. SpringBoot + MyBatis(注解版),常用的SQL方法

    一.新建项目及配置 1.1 新建一个SpringBoot项目,并在pom.xml下加入以下代码 <dependency> <groupId>org.mybatis.spring ...

  3. SpringBoot 快速开启事务(附常见坑点)

    SpringBoot 快速开启事务(附常见坑点) 序言:此前,我们主要通过XML配置Spring来托管事务.在SpringBoot则非常简单,只需在业务层添加事务注解(@Transactional ) ...

  4. MyBatisPlus 开启事务并交由 Springboot 管理

    MyBatisPlus 开启事务并交由 Springboot 管理 前言 一.什么是事务 二.开启方法 总结 前言 网络上对于事务的解释都太过官方,太过晦涩,导致我们都看不懂,我来用人话解释一下什么是 ...

  5. Spring事务传播机制大白话(使用springboot,注解演示)

    1. 我对传播机制的理解 为什么需要传播机制? 因为事务之间可能存在相互调用,例如service业务层的方法存在相互调用,如果相互调用的方法都开启了事务(对应到springboot就是在方法上要添加@ ...

  6. SpringBoot利用@Async注解实现异步调用

    前言:异步编程是让程序并发运行的一种手段,使用异步编程可以大大提高我们程序的吞吐量,减少用户的等待时间.在Java并发编程中实现异步功能,一般是需要使用线程或者线程池.而实现一个线程,要么继承Thre ...

  7. Springboot+JPA使用EntityManagerFactory手动开启事务

    Springboot+JPA使用EntityManagerFactory手动开启事务 import javax.persistence.PersistenceUnit; import javax.pe ...

  8. 【Spring】基于注解实现事务控制(银行转账)

    结构 domain类 package com.itheima.domain;import java.io.Serializable;/*** 账户的实体类*/ public class Account ...

  9. Spring-学习笔记07【银行转账案例】

    Java后端 学习路线 笔记汇总表[黑马程序员] Spring-学习笔记01[Spring框架简介][day01] Spring-学习笔记02[程序间耦合] Spring-学习笔记03[Spring的 ...

最新文章

  1. Swift 中 insetBy(dx: CGFloat, dy: CGFloat) - CGRect 用法详解
  2. mysql基于replication实现最简单的M-S主从复制
  3. 用无序列表做的网站公告牌(Billboard)
  4. WINCE的FFMPEG交叉编译环境搭建
  5. JavaScript算法相关
  6. python使用spark-sql读取数据并可视化_使用Spark SQL读取HBase上的数据
  7. 面试题27. 二叉树的镜像
  8. Notepad++ 配置 Markdown
  9. sql 拼接同列的值
  10. [Ext JS]8.3 Sencha Studio安装与快速介绍之一
  11. 抖音举办平台治理开放日 半年捣毁25个黑产团伙
  12. (26)基于cookie的登陆认证(写入cookie、删除cookie、登陆后所有域下的网页都可访问、登陆成功跳转至用户开始访问的页面、使用装饰器完成所有页面的登陆认证)...
  13. 页面加载缓冲的login
  14. 带宽与网速之间的换算
  15. 二级分销商城模式开发
  16. 效率最高的两种项目沟通方式
  17. Android——App内文件分享功能
  18. apt-fast 使用
  19. 3601lpk.dll劫持病毒分析
  20. 计算机怎么放音乐怎么按,QQ音乐怎么用手机控制电脑放歌曲

热门文章

  1. 【环境篇】ESP-IDF零基础入门 2 —— 搭建开发环境2
  2. ViT:视觉Transformer backbone网络ViT论文与代码详解
  3. 蜂鸟视图JS SDK v3.0:五大亮点,打造更小更快的可视化地图应用
  4. qiankun 使用
  5. 如何选择最佳存储解决方案
  6. WPS表格 JSA 学习笔记 - 批量设置图片
  7. 我常用的知识内容服务
  8. Flutter Gcm加密
  9. 服务器再次全球宕机 谷歌官方回应:内部技术故障所致
  10. 时间序列——MA(q)模型