【spring boot】service层事务控制

2023-10-26

我们再做spring boot项目的时候,经常需要在一个service层调用多个dao层,操作不同的数据库表来实现业务,这个时候要对事务进行一个统一的过程,spring boot提供了这种支持。

  1. 首先需要在service层添加:@Transactional 开启事务控制
    在这里插入图片描述
  2. 在需要控制的方法上添加注解:@Transactional(rollbackFor = Exception.class)(这个如果在类上面声明的话,可以不需要单独在防范上声明)

在这里插入图片描述
3. 一定要注意的一点是,一定要在事务控制的方法上把异常抛出去,spring捕获异常后,对事务进行回滚,如果我们自己catch异常后,spring不会帮我们处理

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【spring boot】service层事务控制 的相关文章

  • IntelliJ IDEA 必备插件(持续更新...)

    插件名称 功能描述 gitignore 过滤提交到git仓库的文件 Alibaba Java Coding Guidelines 阿里巴巴Java规约检查插件 gitflow Integration git flow集成插件
  • python配置opencv环境

    1 下载python3 7 2 它自带pip 直接输入 pip install opencv python pip install numpy pip install matplotlib 安装不成功则在pip install XXX命令的
  • 《C++语言基础》程序阅读——和对象找感觉

    返回 贺老师课程教学链接 按照封装与信息隐藏的原则 除非特别需要 类中的数据成员需要设置为私有 由此带来的问题是 在类外如何访问这些私有成员 下面4段程序概括了常用的方法 请仔细阅读下面的程序 在阅读过程中 画出对象 变量在内存中的表示图
  • Unity如何把游戏导出成手机安装包

    文章目录 前言 使用环境 步骤 添加模块 添加场景 导出 平台 导出前的设置 构建APK 其他文章 前言 本文章主要演示了 如何将制作好的游戏 导出成APK 安装到手机上 使用环境 Unity2022 步骤 添加模块 确保你已经安装了And
  • Python中sub()用法

    Python来进行查询和替换一个文本字符串 可以使用sub 方法来进行查询和替换 sub方法的格式为 sub replacement string count 0 replacement是被替换成的文本 string是需要被替换的文本 co
  • 编译内核、更新源

    1 ubuntu下面修改更新源 sudo gedit etc apt sources list 2 编译内核 1 cd 到 usr src 下 解压下载的内核源代码包 2 make mrproper 清理生成的文件 貌似对第一次编译内核没有
  • STM32F103 GPIO内部电路图

    GPIO结构图 GPIO工作模式 输入模式 输入浮空 输入上拉 输入下拉 模拟输入 输出模式 开漏输出 开漏复用功能 推挽式输出 推挽式复用功能 输入浮空 输入上拉 输入下拉 模拟输入 开漏输出 开漏复用功能 推挽式输出 推挽式复用功能
  • 掌握Python的X篇_1_认识Python(做什么?;是什么?:控制台使用、Python的本质就是一个exe程序;python是一个翻译器机器:人写的代码转为机器语言)

    掌握Python的X篇 1 认识Python 1 为什么学习Python 2 什么是Python 2 1介绍控制台及其基本使用 2 1 1 控制台的启动方法 2 1 1 控制台及使用 2 1 Python的本质 就是一个exe程序 3 Py
  • xenomai 在X86平台下中断响应时间测试

    版权声明 本文为本文为博主原创文章 转载请注明出处 如有问题 欢迎指正 博客地址 https www cnblogs com wsg1100 本文主要讲述xenomai 在X86平台上的中断响应时间测试 1 中断响应时间 实时操作系统的意义
  • Eclipse的启动问题【an error has occurred see the log file】

    今天打开Eclipse的时候出现来了一个问题 导致了Eclipse打不开 错误的提示是 An error has occurred See the log file 谷歌了一下 解决的办法是 删除eclipse的临时文件 eclipse c
  • html文章整体居中,HTML如何让文字居中?附两种方式

    我们在编写一个网页时 经常需要将文字居中 那么这篇文章小编教你HTML如何让文字居中 方法一 居中标签中可以直接添加align center 样式 使文字居中 具体代码如下 w3cschool 编程狮 w3cschool 编程狮 w3csc
  • 用python分析NBA联盟球员信息,才知道这些秘密!

    作者 锋小刀 微信搜索 Python与Excel之交 关注我的公众号查看更多内容 前言 NBA由北美三十支队伍组成的男子职业篮球联盟 汇集了世界上最顶级的球员 是美国四大职业体育联盟之一 本文爬取了NBA中国官方网站球员信息 进行数据可视化
  • 数据库索引背后的数据结构之B-树和B+树

    文章NO1 数据库查询为什么要使用索引 从理论上讲 假设数据库中的某一个表有108条记录 数据库管理系统一个页面大小4KB 最多能存放100条记录 那么 108条记录将分成 106页来存储 总的存储开销为4KB 106 3906MB 3 8
  • C++实现动态数组

    C 实现动态数组 1 数组初始化 2 给数组赋值 3 打印数组 4 增加数组长度 5 数组最后一个值替代最小值 6 逆置数组元素 7 逆置数组中指定位置范围的元素 8 删除数组中值为x的所有元素 9 删除所有介于s和t之间 包含s与t 的元
  • 永磁同步电机矢量控制(六)——MTPA最大转矩电流比控制

    恰饭一下 已经过了工作的年纪 在这里稍微出一下自己做的一套永磁同步电机的教程 为了解决电机控制入门难的问题 我将自己从一知半解到现在的学习记录整理成十个部分学习教程 从基础的矢量控制 到应用性较强的MTPA 弱磁控制等 最后深入到无速度传感
  • 边缘智能聚焦嵌入式世界

    没有什么超出了我们的想象力的极限 我们习惯于在间谍电影中看到的东西需要进行大规模升级 以超越现在认为的标准 德国纽伦堡 一切都超出了我们的想象范围 而且我们习惯于在间谍电影中看到的东西需要进行大规模升级 以超越现在认为的标准 这在Embed
  • redis 、mysql数据库每秒的访问量

    对于redis redis是内存数据库 数据保存在内存中 当然速度快 理论上 redis是单进程单线程模式 采用队列模式将并发访问转为串行访问 而这种模式不但没有影响它的性能 反而因为这样设计而变得更快 redis是NOSQL 即非关系型数
  • (JS逆向2022.04.11) 某奇艺模拟登陆(不含滑块

    文章目录 目录 文章目录 一 分析参数 二 逆向过程 dfp password qd sc 三 总结 目标网站 aHR0cHM6Ly93d3cuaXFpeWkuY29tLw 文章不做任何商业用途 仅供学习参考 一 分析参数 1 首先抓包查看

随机推荐

  • flutter应用安卓商店合规化处理

    安卓商店在应用上架时会要求用户清楚并授权之后才可收集用户和设备信息 如mac地址 imei等 1 安卓开发者会在application中进行此操作 flutter应用可在main文件中添加授权对话框 flutter的MyApp 可等同看作是
  • 【uniapp upload】 上传图片和视频

    template
  • PythonStudy——数据类型转化 Data type conversion

    类型转换 1 数字类型 int bool float 2 str与int int 10 int 10 int 0 float 5 float 3 14 str 数字 3 重点 str与list abc gt a b c list abc j
  • mysql实现sequence-高级篇

    mysql 创建sequence 创建随机数表 drop table if exists test sequence test hsg create table test sequence test hsg seqname VARCHAR
  • 台达b3伺服参数设置方法_台达PLC控制伺服项目接线及程序案例

    点击上方 伺服与运动控制 关注我们 今天主要分享的是关于台达 ASDA 伺服的相关控制案例 主要有以下的内容 台达 ASDA 伺服定位演示系统 控制要求 1 由台达 PLC 和台达伺服组成一个简单的定位控制演示系统 通过 PLC 发送脉冲控
  • 7-3 两个有序序列的中位数 (25分) 已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列A ​0 ​​ ,A ​1 ​​ ,⋯,A ​N−1 ​​ 的中位数指A

    7 3 两个有序序列的中位数 25分 已知有两个等长的非降序序列S1 S2 设计函数求S1与S2并集的中位数 有序序列A 0 A 1 A N 1 的中位数指A N 1 2 的值 即第 N 1 2 个数 A 0 为第1个数 输入格式 输入分三
  • pycharm中unresolved reference怎么解决(配置问题)

    iunresolved reference怎么解决 解决方法 本人使用方法二解决的 方法1 进入PyCharm gt Settings gt Build Excution Deployment gt Console gt Python Co
  • pdpbox 安装问题

    本人走了非常多的弯路 网上能找到的方法都试过了 简直吐血 最终发现问题解决的很简单 pip instal pdpbox 改为pip install pdpbox1 没错只用加一个数字 1 原因我不太清楚 应该是版本问题 可见官网PDPbox
  • chrom for ubuntu (Chrominum)的安装

    原文链接 http www ubuntugeek com how to install chromium google chrome in ubuntu using deb package html Chrominum的安装 1 编辑 et
  • java.sql.SQLNonTransientConnectionException: Could not create connection to database server

    在搭建springboot项目时 整合JdbcTemplate和MyBatis连接数据库报错 报错为 java sql SQLNonTransientConnectionException Could not create connecti
  • 渐变维度(Slowly Changing Dimension)及其处理方法

    渐变维度 Slowly Changing Dimension 及其处理方法 要讨论什么是渐变维度 或者缓慢变化维度 就要先说说什么是维度 虽然经常挂在嘴边的词 但解释起来确实有难度 更不要说给出一个概念了 我们 平时提到的0维的点 一维的线
  • PTA(test)python3

    考试题 判断题 选择题 函数题 6 1 编写函数 接收参数a和n 计算并返回形式如a aa aaa aaaa aaa aaa的表达式前n项的值 其中a为小于10的自然数 8 分 6 2 jmu python 判断质数 10 分 编程题 7
  • 遇到pdf文件损坏打不开要如何解决?

    在我们平时的办公中 会使用电脑来编辑 接收各种电子文件 大家会发现pdf文件是我们经常使用的一种文件类型 但是 有时候 我们会发现自己的pdf文件根本打不开 相信很多朋友遇到这种情况不知道该怎么办 如果你也想知道具体的原因和解决方法 就跟着
  • 服务器运维方法

    为保官网的正常稳定运行 也为了更好的对服务器进行管理维护 特制定以下运维方案 1 硬件系统管理 一 服务器运行稳定性 服务器在运往托管商处上架前 应对服务器的稳定性进行全面的测试 包括网站主程序的测试 网站数据库的测试 网站压力测试等多项内
  • C++复习笔记--auto A:B 的使用

    1 用法 1 1 for auto A B 利用 A 遍历并获取 B 容器中的每一个值 但不会影响容器 B 的内容 include
  • SpringCloudAlibaba微服务架构搭建(四)Gateway网关(包含源码)

    目录 前言 1 什么是Spring Cloud Gateway 2 核心概念与架构解析 1 Route 路由 2 谓语 断言 3 Filter 过滤器 4 负载均衡与动态路由 编辑 3 请求路由与负载均衡 请求路由 负载均衡 动态路由 4
  • 常用文件扩展名介绍

    我们对文件命名是以扩展名加以区分 即文件名格式为 主文件名 扩展名 系统文件按照不同的格式和用途进行分类 以下是常用文件扩展名介绍 1 txt 记事本 2 doc docx word文档 3 xls xlsx excel表格 4 ppt p
  • chatgpt每日问答

    20230411 将数组转成十六进制字符串 array 12 34 56 78 90 hex string join 02x format x for x in array print hex string 20230409 变声 用pyt
  • 中文情感分类

    本文通过ChnSentiCorp数据集介绍了文本分类任务过程 主要使用预训练语言模型bert base chinese直接在测试集上进行测试 也简要介绍了模型训练流程 不过最后没有保存训练好的模型 一 任务和数据集介绍 1 任务 中文情感分
  • 【spring boot】service层事务控制

    我们再做spring boot项目的时候 经常需要在一个service层调用多个dao层 操作不同的数据库表来实现业务 这个时候要对事务进行一个统一的过程 spring boot提供了这种支持 首先需要在service层添加 Transac