位置: IT常识 - 正文

从阿里规约看Spring事务(阿里规则官方头条)

编辑:rootadmin
目标:事务失效引发的灾难 如下图(张三 >李四转账) tips 下订单 订单支付 减库存(失败) 超卖现象 代码回忆: //实现类 public class UserServiceImpl implements UserService { @Autowired private UserMapper ...

推荐整理分享从阿里规约看Spring事务(阿里规则官方头条),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:阿里规则在哪里看,阿里规则在哪里看,阿里做到p7,2021阿里新规则,阿里规范,阿里规范,阿里规则在哪里看,阿里规范,内容如对您有帮助,希望把文章链接给更多的朋友!

目标:事务失效引发的灾难

如下图(张三--->李四转账)

tips

下订单-------订单支付-----减库存(失败)

超卖现象

代码回忆:

//实现类public class UserServiceImpl implements UserService {@Autowiredprivate UserMapper userMapper;@Resourceprivate LogService logService;@Override@Transactional//@Transactional(rollbackFor = Exception.class)public void insert() throws Exception {method1_Test();}//模拟转账@Transactionalprivate void method1_Test() throws Exception {System.out.println(">>>>>>>>>>>进入到业务方法");User user = new User();user.setName("张三");userMapper.insertUser(user);//张三扣减500元addPayment();//模拟李四增加500元(检查异常)} //FileNotFoundException extends IOExceptionprivate void addPayment() throws FileNotFoundException {FileInputStream in = new FileInputStream("a.txt");//模拟检查异常}} ......略

如果说你从从事务方法中抛出的是检查异常(io、sql),那么这个时候,Spring将不能进行事务回滚。

从阿里规约看Spring事务(阿里规则官方头条)

是不是很恐怖呢??

所以说,阿里规定1、让检查异常也回滚:你就需要在整个方法前加上@Transactional(rollbackFor=Exception.class)

2、让非检查异常不回滚:需要加入@Transactional(notRollbackFor=RunTimeException.class)

3、不需要事务管理(or 日志丢失)需要加入@Transactional(propagation=Propagation.NOT_SUPPORTED)

课程目标总结

1、解决事务失效:通过源码学习如何让检查异常也回滚(or 运行异常不回滚);从源码角度深入底层原理

2、解决无需事务控制;查询 or 日志记录;通过传播属性如何控制;底层是如何实现的

3、正常的事务执行流程在源码中是如何实现的

1.1 Spring事务总体介绍

在Spring中,事务有两种实现方式:

编程式事务管理: 编程式事务管理使用TransactionTemplate可实现更细粒度的事务控制。

申明式事务管理: 基于Spring AOP实现。

其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。

本文链接地址:https://www.jiuchutong.com/zhishi/304598.html 转载请保留说明!

上一篇:最新2022年Auto Cad2019专用破解版windows11-windows12-32位64位下载(附视频教程)免费下载(学生誓词最新2022年)

下一篇:HashMap详解(hashmap教程)

  • 纳税检查调整的销售额确认收入吗
  • 关联方交易金额含税吗
  • 增值税普通发票和电子普通发票的区别
  • 平台收取的佣金开具什么发票
  • 开民工工资专户
  • 会计准则哪些科目变化最大
  • 向境外分派红利怎么计算缴纳企业所得税
  • 返聘已退休人员是否需要缴纳社保
  • 进项已经抵扣会退回吗
  • 负债表应交税费为负数
  • 试分析营改增的重大意义
  • 经济法基础企业所得税好难
  • 酱菜税率是多少
  • 有形动产租赁印花税税率是多少
  • 企业所得税补充申报怎么报
  • 项目资本金是什么意思大白话
  • 购买食堂餐具开票怎么开
  • 工资条上税基调整是啥意思
  • 税控盘逾期未抄报,交罚款需要带什么
  • 银行承兑第一手怎么盖章
  • 合同取得成本与销售费用
  • 纳税人月销售额怎么算
  • 承兑汇票如何背书转让
  • 收到进项税额发票怎么处理
  • windows10如何卸载edge
  • 投资回报期限
  • 电脑主板bios设置
  • win10怎么清理剪切板
  • linux小技巧
  • 增加注册资本的请示
  • wordpress创建
  • php实现分页显示
  • php动态读取数据的代码
  • 行政单位基建账户可以建立吗为什么
  • vue知识点汇总
  • php无限级分销
  • 律师费开票税费谁承担
  • 应交税费转出会计分录
  • 工会捐款怎么账务处理
  • 职工教育经费扣除限额怎么算
  • 帝国cms工作流
  • phpcms程序
  • 受托代销商品的成本结转
  • 增值税发票抵扣期限是多久
  • 金税盘申报流程视频
  • 并发环境下,共享资源的正确使用方式是
  • mysql数据控制语句
  • sql字符串处理函数
  • 纳税调整调减有哪些
  • 厂房无偿使用交税吗
  • 个体户注销流程 就找三合一企服
  • 处理废旧材料会计分录
  • 现金等价物的特征是
  • 行政单位拨出经费的规定
  • 物流公司驾驶员安全教育培训
  • 安全生产费的会计分录
  • sql注入是干嘛的
  • truncate可以删除部分数据
  • 电脑如何安装Anaconda
  • macpro教程
  • 安装网络设备
  • 自动隐藏桌面图标
  • linux与windows有哪些主要区别
  • win8的系统怎么装win7
  • win8任务栏假死
  • vlcplayer最新版
  • iis安装步骤 windows server 2008
  • windows右键不能用了
  • glCopyBufferSubData
  • shell 多个文件合并
  • CCClippingNode导致的贴图错误问题
  • 深入了解求助者时,首先要进行工作是
  • 不宜用于
  • NodeJS配置HTTPS服务实例分享
  • Android studio DrawerLayout
  • 税控盘怎么查看开票截止日期
  • 全国企业信用信息系统网官网
  • 新疆碧桂园三期最新消息
  • 问一下医院
  • 烟叶税的意义和感悟
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设