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

  • 建筑企业如何纳税
  • 所得税汇算清缴账务处理
  • 内部退养个人所得税政策
  • 固定资产什么时候开始折旧
  • 核定征收三种方式
  • 党费会计核算科目说明
  • 血液制品3%增值税税率
  • 农业免税企业账户怎么查
  • 开具了红字发票信息表的税额需要转出吗
  • 个体工商户出租商铺个人所得税
  • 增值税一般纳税人证明文件
  • 融资租赁租金会计科目
  • 车辆生产企业目录
  • 买东西几块钱忘付了怎么办
  • 企业发生销售折扣的原因有
  • 广告制作选哪个专业好
  • 挂靠费如何纳税?
  • 商业承兑汇票是谁签发的
  • 利润分配表会计分录
  • 股东分红账务处理后报表怎么处理
  • 施工企业会计制度有哪些
  • 销售方的现金折扣怎么处理
  • 工业增加值计算公式是什么
  • 员工意外伤害保险怎么买
  • 获取当前位置被拒怎么办
  • 公司整体收购协议书范本
  • 公司所有费用都让一人报销
  • thinkphp i方法
  • 高新技术企业取消资格怎么处罚
  • jsPDF + html2canvas A4分页截断 完美解决方案(含代码 + 案例)
  • 报表上如何把账号删除
  • php加密zend
  • 学前端的可以是什么专业的
  • 账面价值是历史价值吗
  • 应交税费转出会计分录
  • 体检的收据是什么
  • 出租房屋的房产税怎么算
  • 持有待售资产属于
  • 劳务费个税扣税
  • 小规模纳税人购进农产品可以抵扣进项税吗
  • 企业电子发票申请流程2023版
  • 房产税从何时计算缴纳
  • centos 安装方法
  • 应税服务零税率是什么
  • 单位收风险金违法吗
  • 其他应付款核算范围包括哪些
  • 销售产品的软件平台
  • 现金日记账是会计人员根据审核后的
  • 什么叫做未入账金额
  • 食品企业产品
  • 租用写字楼水电怎么收费
  • 公司与公司之间劳务协议
  • 总公司中标分公司结算可以吗
  • 企业出售投资性房地产应按照售价与账面价值
  • mysqldump -s
  • win8系统怎么安装office
  • 苹果电脑dock栏是什么意思
  • Win7系统开机流程
  • inodecmn.exe
  • win10系统电脑无限重启
  • rsmsink.exe - rsmsink是什么进程 有何作用
  • linux device driver
  • koeidsnd.dll
  • 水模拟软件
  • cocos2dx CardinalSpline和CatmullRom算法
  • unity3d跑酷游戏推荐
  • shell随机
  • Android Error: No resource found ··· 'layout_above' with value '@id/···
  • bat查看ip地址和mac地址
  • bat 批处理文件
  • python如何获取
  • 用批处理结束进程
  • 编程 delphi
  • 地方税务局发票查询
  • 丰田威驰2023款1.5自动挡新车报价
  • 电子税务局官网湖南省
  • 甘肃省国家励志奖学金证书打印网址
  • 申请农合减免
  • 轮胎消费税的征收环节
  • 广州市地方税务局 社保费申报
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设