位置: 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教程)

  • 小型微利企业的从业人数和资产总额
  • 公司出租房营业税税率是多少
  • 其他权益工具投资科目编码
  • 政府回购安置房几种模式
  • 开票项目与实际项目不符
  • 累计扣税法什么时候实行的
  • 设备租赁费用
  • 预付的房租计入什么费用
  • 样品销售如何记账
  • 个人从海外买东西自用要交税吗
  • 土地使用权分割转让依据
  • 价外补贴需要交增值税吗
  • 缴纳土地增值税
  • 结转产成品会计分录怎么做
  • 发出存货的计价方法对企业财务状况和经营成果有何影响
  • 一次性离职补偿金如何避税
  • 代收车船税没有发票能走帐吗
  • 应返还财政额度是什么科目
  • 用银行汇票付款的会计分录
  • 民间非营利组织会计制度
  • 总公司要合并分公司报表吗
  • 取得拍卖的固定资产
  • 学校应该缴纳的税
  • 深圳税种核定需要申报吗
  • 税务稽查补缴的税款需要申报吗
  • 季报是根据什么制定的
  • 公司支付劳务派遣人员工资账务处理
  • 税务异常不处理会的后果
  • 研发阶段计入管理费用吗吗
  • 铁路改道作业的流程
  • 已发货未开票的货物需要结转成本吗
  • 收购农产品再销售最新税收政策
  • php部署在什么服务器
  • 存出保证金计入货币资金吗
  • deepin下载教程
  • 实收资本可以大于注册资本嘛
  • 固定资产汽车抵扣新政策
  • php数组函数,选班长
  • CodeIgniter与PHP5.6的兼容问题
  • qq2440启动linux后插入u盘出现usb 1-1: device descriptor read/64, error -110,usb 1
  • uniapp页面loading
  • 商业银行提取的贷款损失准备金
  • 不属于工资薪金所得的是
  • 个税专项扣除中赡养老人
  • 工程项目会计怎么样
  • php 字符串处理函数
  • 应征增值税不含税销售额(5%征收率)是什么意思
  • php clone函数
  • 织梦网站怎么改logo
  • 注册资本印花税最新政策2023年
  • 培训费属于什么
  • sql优化口诀
  • 注册资本在十年后怎么办
  • 海关缴款通知书怎么查看
  • 税务会计账务处理一般方法有哪些
  • 土地使用权属于无形资产吗
  • 企业研发费用包括工资支出吗
  • 通行费的进项抵税怎么算
  • 企业的免税收入范围
  • 企业会计的应用指南
  • 加大固定资产投资
  • 防御sql注入的方法有哪几种
  • gridview自定义排序
  • win7系统关机很慢什么原因
  • crowd1登录界面
  • win8系统怎么设置自动关机
  • mac怎么设置
  • keyword是啥
  • win7系统安装软件重启电脑后就没了
  • win7 64位旗舰版系统联网时提示0x80070002的解决方法
  • win8的控制面板在哪里打开
  • 跑跑3s是谁
  • perl -pi
  • bootstrap要学吗
  • python如何批量造数据
  • 谈谈我对环境保护的认识
  • js基础
  • android获取屏幕大小
  • 江西电子税局
  • 企业演讲稿 英文
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设