当前位置: 首页 > news >正文

系列四十二、Spring的事务传播行为案例演示(二)#REQUIRED

一、演示Spring的默认传播行为(REQUIRED)

1.1、运行之前表中的数据

1.2、StockServiceImpl

/*** @Author : 一叶浮萍归大海* @Date: 2023/10/30 15:43* @Description:*/
@Service(value = "stockServiceREQUIRED")
public class StockServiceImpl extends ServiceImpl<StockMapper, StockDO> implements StockService {@Resourceprivate StockMapper stockMapper;@Resourceprivate IntegralService integralService;@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)@Overridepublic void reduceStock(Long id, Integer num) {try {// 减库存StockDO dbStock = stockMapper.selectById(id);StockDO updateStock = new StockDO();BeanUtils.copyProperties(dbStock, updateStock);updateStock.setNum(dbStock.getNum() - num);stockMapper.updateById(updateStock);// 增加积分IntegralDO updateIntegral = new IntegralDO();updateIntegral.setPreIntegral(0);updateIntegral.setCurrentIntegral(1000);updateIntegral.setUserId(1L);integralService.addIntegral(updateIntegral);// 模拟异常int i = 10 / 0;} catch (BeansException e) {throw new RuntimeException(e);}}
}

1.3、IntegralServiceImpl

/*** @Author : 一叶浮萍归大海* @Date: 2023/10/30 15:42* @Description:*/
@Service(value = "integralServiceREQUIRED")
public class IntegralServiceImpl extends ServiceImpl<IntegralMapper, IntegralDO> implements IntegralService {@Resourceprivate IntegralMapper integralMapper;@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)@Overridepublic void addIntegral(IntegralDO updateIntegral) {integralMapper.insert(updateIntegral);}
}

1.4、测试结果

1.5、数据变化 

stock表中的库存数量没有发生变化,integral(积分表)表没有增加积分。符合预期

相关文章:

系列四十二、Spring的事务传播行为案例演示(二)#REQUIRED

一、演示Spring的默认传播行为&#xff08;REQUIRED&#xff09; 1.1、运行之前表中的数据 1.2、StockServiceImpl /*** Author : 一叶浮萍归大海* Date: 2023/10/30 15:43* Description:*/ Service(value "stockServiceREQUIRED") public class StockServiceImpl…...

oracle rac-归档满处理

有客户反馈数据库无法使用了&#xff0c;客户手动启动报错如下 SQL> startup; ORACLE instance started. Total System Global Area 2.6924E10 bytes Fixed Size 2265984 bytes Variable Size 1.3959E10 bytes Database Buffers 1.2952E10 bytes R…...

Python Django 之全局配置 settings 详解

文章目录 1 概述1.1 Django 目录结构 2 常用配置&#xff1a;settings.py2.1 注册 APP&#xff1a;INSTALLED_APPS2.2 模板路径&#xff1a;TEMPLATES2.3 静态文件&#xff1a;STATICFILES_DIRS2.4 数据库&#xff1a;DATABASES2.5 允许访问的主机&#xff1a;ALLOWED_HOSTS 1 …...

挑选MES系统供应商,需要考虑哪些重要因素?

挑选MES系统供应商时&#xff0c;需要考虑下述几个重要因素&#xff1a; 1.功能与特性&#xff1a;MES系统的功能和特性尤为重要。切实保障挑选的服务商可以满足企业的实际需求&#xff0c;包含生产计划管理、物料追踪、质量管理、机器设备等多个方面的功能。 2.系统可扩展性&a…...

Ai创作系统ChatGPT网站源码+图文搭建教程+支持GPT4.0+支持ai绘画(Midjourney)

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统AI绘画系统&#xff0c;支持OpenAI GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署…...

基于计算机视觉的坑洼道路检测和识别-MathorCup A(深度学习版本)

1 2023 年 MathorCup 高校数学建模挑战赛——大数据竞赛 赛道 A&#xff1a;基于计算机视觉的坑洼道路检测和识别 使用深度学习模型&#xff0c;pytorch版本进行图像训练和预测&#xff0c;使用ResNet50模型 2 文件夹预处理 因为给定的是所有图片都在一个文件夹里面&#xf…...

【考研数学】概率论与数理统计 —— 第七章 | 参数估计(1,基本概念及点估计法)

文章目录 引言一、参数估计的概念二、参数的点估计2.1 矩估计法2.2 最大似然估计法 写在最后 引言 我们之前学了那么多分布&#xff0c;如正态分布 N ( μ , σ 2 ) N(\mu,\sigma^2) N(μ,σ2)&#xff0c;泊松分布 P ( λ ) P(\lambda) P(λ) 等等&#xff0c;都是在已知 …...

获取文本长度

使用TextView的getLineCount方法&#xff0c;它可以返回TextView当前显示的行数。但是&#xff0c;这个方法只有在TextView绘制完成后才能返回正确的值&#xff0c;否则可能返回0。因此&#xff0c;需要在TextView的post方法中调用&#xff0c;或者在onWindowFocusChanged方法中…...

python html(文件/url/html字符串)转pdf

安装库 pip install pdfkit第二步 下载程序wkhtmltopdf https://wkhtmltopdf.org/downloads.html 下载7z压缩包 解压即可, 无需安装 解压后结构应该是这样, 我喜欢放在项目里, 相对路径引用(也可以使用绝对路径, 放其他地方) import pdfkit# 将 wkhtmltopdf.exe程序 路径 p…...

Spring概述

Spring概述 Spring 是最受欢迎的企业级 Java 应用程序开发框架&#xff0c;数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。 Spring 框架是一个开源的 Java 平台&#xff0c;它最初是由 Rod Johnson 编写的&#xff0c;并且于 2003 …...

Linux网卡

网卡 网卡&#xff08;Network Interface Card&#xff0c;NIC&#xff09;是一种计算机硬件设备&#xff0c;也称为网络适配器或网络接口控制器。一个网卡就是一个接口 网卡组成和工作原理参考https://blog.csdn.net/tao546377318/article/details/51602298 每个网卡都拥有唯…...

【Python机器学习】零基础掌握ElasticNet变量选择回归器

如何优雅地解决房价预测问题? 房价预测一直是一个热门而复杂的话题。假设一个地产商希望准确地预测不同城市区域的房价,以便更有效地进行房地产投资。问题在于,房价是由多种因素共同决定的,例如地段、房屋面积、交通便利程度等。 为了解决这个问题,一个可行的思路是使用…...

【数据结构】模拟实现Vecotr

namespace my_vector {template <class T>class vector{public:typedef T* iterator;typedef const T* const_iterator;//常量指针&#xff0c;指针指向的值不可以变&#xff1b;//构造函数vector():start(nullptr),finish(nullptr),end_of_storage(nullptr){}//析构函数…...

Qt开发: 利用Qt的charts模块绘制曲线、饼图、柱状图、折线图等各种图表

一、前言 Qt Charts模块是Qt提供的一个用于创建各种类型图表的功能模块。为开发人员提供了一种简单而强大的方式来可视化数据。Qt Charts模块基于Qt GUI框架构建,可以与其他Qt模块无缝集成,例如Qt Widgets、Qt Quick和Qt OpenGL。 Qt Charts模块包含了几个核心类: (1)Q…...

Redis:加速你的应用响应时间,提升用户体验

绝大部分写业务的程序员&#xff0c;在实际开发中使用 Redis 的时候&#xff0c;只会 Set Value 和 Get Value 两个操作&#xff0c;对 Redis 整体缺乏一个认知。这里对 Redis 常见问题做一个总结&#xff0c;解决大家的知识盲点。 1、为什么使用 Redis 在项目中使用 Redis&am…...

乐鑫 SoC 内存映射入门

微控制器 (MCU) 的性能和内存能力逐步提升&#xff0c;其复杂度也随之加大。特别是当用户需要配置内存管理单元来映射外部存储器芯片 (Flash/SPIRAM) 时&#xff0c;这种现象尤其明显。 开始在乐鑫 SoC 上运行 Zephyr RTOS 时&#xff0c;会发现这些 SoC 与 ARM 架构的 MCU 相…...

蓝凌EIS智慧协同平台saveImg接口存在任意文件上传漏洞

蓝凌EIS智慧协同平台saveImg接口存在任意文件上传漏洞 一、蓝凌EIS简介二、漏洞描述三、影响版本四、fofa查询语句五、漏洞复现六、深度复现1、发送如花2、哥斯拉直连 免责声明&#xff1a;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者…...

【SEC 学习】美化 Linux 终端

一、步骤 1. 进入 /etc/bash.bashrc vim /etc/bash.bashrc2. 重新加载 bash.bashrc source /etc/bash.bashrc二、各参数指标 符号含义\u当前用户的账号名称\h仅取主机的第一个名字&#xff0c;如上例&#xff0c;则为fc4&#xff0c;.linux则被省略\H完整的主机名称。例如&…...

【Unity小技巧】可靠的相机抖动及如何同时处理多个震动(附项目源码)

文章目录 每篇一句前言安装虚拟相机虚拟相机震动测试代码控制震动清除震动控制震动的幅度和时间 两个不同的强弱震动同时发生源码完结 每篇一句 围在城里的人想逃出来&#xff0c;站在城外的人想冲进去&#xff0c;婚姻也罢&#xff0c;事业也罢&#xff0c;人生的欲望大都如此…...

【51单片机】51单片机概述(学习笔记)

一、课程简介 1、硬件设备 51单片机开发板 Win电脑 2、软件设备 Keil5&#xff1a;编写程序代码 STC-ISP&#xff1a;下载程序 有道词典 福昕阅读器 二、开发工具介绍 1、Keil5 keil.com > 下载C51版本 > 使用破解程序 2、STC-ISP 绿色版&#xff1a;直接运…...

除了 Docker 还能用什么?一文看懂容器技术的“四大门派”

除了 Docker 还能用什么&#xff1f;一文看懂容器技术的“四大门派” 在云原生时代&#xff0c;Docker 几乎成了容器的代名词。但实际上&#xff0c;容器技术是一片茂密的森林&#xff0c;除了 Docker&#xff0c;还有许多针对特定痛点&#xff08;如安全、性能、隔离性&#x…...

从CTF赛题到真实漏洞:LFSR与BM算法在流密码攻击中的实战指南

从CTF赛题到真实漏洞&#xff1a;LFSR与BM算法在流密码攻击中的实战指南 在网络安全竞赛中&#xff0c;线性反馈移位寄存器&#xff08;LFSR&#xff09;类题目一直是密码分析方向的经典题型。许多参赛者第一次接触这类题目时&#xff0c;往往会被其数学理论吓退&#xff0c;但…...

如何用AEUX免费实现设计到动画的无缝转换:完整指南

如何用AEUX免费实现设计到动画的无缝转换&#xff1a;完整指南 【免费下载链接】AEUX Editable After Effects layers from Sketch artboards 项目地址: https://gitcode.com/gh_mirrors/ae/AEUX AEUX是一款免费开源的动效设计工具&#xff0c;它能让你从Figma或Sketch直…...

基于MCP协议的AI工具调用服务器:omega-point-convergence-mcp实战指南

1. 项目概述与核心价值最近在折腾AI智能体开发&#xff0c;特别是想让它们能更“主动”地去获取和处理外部信息时&#xff0c;一个绕不开的话题就是工具调用。传统的API集成方式&#xff0c;每个新工具都得写一遍对接代码&#xff0c;调试起来繁琐不说&#xff0c;维护成本也高…...

自动驾驶系统商业化策略:硬件与软件协同设计解析

1. 自动驾驶系统的商业策略框架解析自动驾驶系统&#xff08;Autonomous Driving System, ADS&#xff09;作为智能交通领域的核心技术&#xff0c;其商业化落地需要硬件&#xff08;SSH&#xff09;与软件策略的协同设计。从技术架构来看&#xff0c;ADS由感知层、决策层和执行…...

如何用茉莉花插件实现Zotero中文文献元数据一键抓取:终极解决方案

如何用茉莉花插件实现Zotero中文文献元数据一键抓取&#xff1a;终极解决方案 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件&#xff0c;用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum 还在…...

【资讯】《二〇二五年中国知识产权保护状况》白皮书正式发布

2026年5月7日&#xff0c;《二〇二五年中国知识产权保护状况》白皮书正式发布&#xff0c;呈现了2025年中国知识产权保护工作进展&#xff0c;系统介绍制度建设、审批登记、文化建设、国际合作等方面的扎实成果&#xff0c;为社会各界和国际社会了解中国知识产权保护最新实践提…...

EmotionBook开源项目:构建可计算的情绪数据模型与可视化分析系统

1. 项目概述&#xff1a;一个为情绪寻找容器的数字实验最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“EmotionBook”。光看名字&#xff0c;你可能会联想到一本情绪日记&#xff0c;或者一个记录心情的App。但点进去之后&#xff0c;你会发现它远不止于此。这其实是一个…...

win2xcur:Windows光标主题完美移植Linux的格式转换指南

1. 项目概述&#xff1a;从Windows光标到Linux的“翻译官”如果你和我一样&#xff0c;是个在Linux桌面和Windows之间反复横跳的用户&#xff0c;或者你为团队维护着跨平台的开发环境&#xff0c;那你一定遇到过这个不大不小但很恼人的问题&#xff1a;Windows系统上那些精心设…...

如何提升宝塔面板文件管理效率_使用SSH命令与Web端结合.txt

...