当前位置:首页 > Java技术 > SpringBoot中的事务管理

SpringBoot中的事务管理

2022年11月09日 14:29:49Java技术7

SpringBoot中的事务管理

在Spring Boot中,当我们使用了spring-boot-starter-jdbc或spring-boot-starter-data-jpa依赖的时候,会自动注入DataSourceTransactionManager或JpaTransactionManager。所以我们不需要任何额外配置就可以用@Transactional注解进行事务的使用。

在SpringBoot中使用事务时,只需要配置好数据源,然后直接在需要使用事务的方法上加入@Transactional注解即可。

码云源码:SpringBoot中的事务管理

引入依赖:

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

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.3</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>

数据源配置:

spring:
  datasource:
    username: root
    password: mysql
    url: jdbc:mysql://localhost:3306/bank_db?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource

@Transactional注解一般在Service中使用:

@Service
public class UserService {
     

    @Autowired
    private UserDao userDao;

	@Transactional(propagation=Propagation.REQUIRED,isolation = Isolation.REPEATABLE_READ)
    public void accountMoney(){
     
        userDao.reduceMoney();
        userDao.addMoney();
    }
}

作者:长不大的大灰狼
来源链接:https://blog.csdn.net/glpghz/article/details/113993992

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/68827.html

分享给朋友:

“SpringBoot中的事务管理” 的相关文章

SpringBoot之Hello World篇,使用eclipse+maven搭建SpringBoot工程

SpringBoot之Hello World篇,使用eclipse+maven搭建SpringBoot工程

首先来了解下什么是SpringBoot 百度百科:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬...

SpringBoot整合消息队列工具kafka

SpringBoot整合消息队列工具kafka

一、前言 之前整理了kafka在windows下的安装过程,也通过shell命令进行了消息产生者和消息消费者的创建及消息发送,所以想到把kafka与最流行的SpringBoot的框架进行整合,与项目结合,进行消息的发送。 二、整合开始 1.SpringBoot工程搭建,此处不多讲,可以...

SpringBoot+Mybatis框架整合Shiro权限管理

SpringBoot+Mybatis框架整合Shiro权限管理

一、前言 ​ 之前曾分享过一个关于shiro的认证原理的文章,分享了一下shiro的认证流程与shiro中的名词解释,其实shiro作为一款轻量级框架,被应用在各种中小型及大型企业的登录认证和用户授权的模块,有小伙伴称,在用SpringBoot框架,之前用过xml方式进行配置shiro框架,...

SpringCloud之断路器Hystrix

SpringCloud之断路器Hystrix

一、Hystrix是什么 之前文章讲过,SpringCloud中加入了断路器功能,当请求接口时,服务提供者出现宕机问题,没有一个好的容错机制的情况下,是有可能造成雪崩效应,造成整个服务瘫痪,从而导致系统挂掉。Hystrix是Netflix提供的一个延迟和容错库,可以在服务出现问题时,进行及时...

SpringBoot 如何进行参数校验

SpringBoot 如何进行参数校验

为什么需要参数校验在日常的接口开发中,为了防止非法参数对业务造成影响,经常需要对接口的参数进行校验,例如登录的时候需要校验用户名和密码是否为空,添加用户的时候校验用户邮箱地址、手机号码格式是否正确。 靠代码对接口参数一个个校验的话就太繁琐了,代码可读性极差。 Validator框架就是为了解决开发人...

Spring Boot+微信小程序

Spring Boot+微信小程序

1. 前言 微信小程序开发平台,提供有一类 API,可以让开发者获取到微信登录用户的个人数据。这类 API 统称为开放接口。 Tip:微信小程序开发平台,会把微信登录用户的个人信息分为明文数据和敏感数据。 明文数据也称为公开数据,开发者可以直接获取到,如登...

SpringBoot整合 mybatisPlus

SpringBoot整合 mybatisPlus

引言 最近在准备一期SpringBoot整合大全系列文章,同时也会有视频放出(视频还在酝酿中),如果大家觉得有帮助,记得点赞加收藏哦。 话不多说,咱们直接进入正题。 ​ 代码已经上传到码云:https://gitee.com/lezaiclu...

SpringBoot 整合MybatisPlus 实现字段自动注入

SpringBoot 整合MybatisPlus 实现字段自动注入

最近在整合MybatisPlus,发现mybatisPlus有很多有趣并且有用的功能,今天给大家分享一个:如何使用MybatisPlus实现数据库字段自动填充的功能。 前言 在我们日常开发中,我们经常会为每个表设置一个创建时间、更新时间或者创...

深入浅出 spring-data-elasticsearch

『  风云说:能分享自己职位的知识的领导是个好领导。 』 运行环境 :JDK 7 或 8,Maven 3.0+ 技术栈 :SpringBoot 1.5+, Spring Data Elasticsearch 1.5+ ,Elast...

Spring Boot 2.x 系列教程:WebFlux 系列教程大纲(一)

Spring Boot 2.x 系列教程:WebFlux 系列教程大纲(一)

摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! WebFlux 系列教程大纲 一、背景 大家都知道,Spring Framework 是 Java/Spring 应用程序跨...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。