老师,你这个怎么不用乐观锁,或者在数据库中进行金额的加减操作。 是不考虑并发了吗?
来源:11-12 事务消息支付实战-7

梨多情
2020-03-26
PlatformAccount pa = platformAccountMapper.selectByPrimaryKey(“platform001”); // 当前平台的一个账号
pa.setCurrentBalance(pa.getCurrentBalance().add(money));
Date currentTime = new Date();
pa.setVersion(pa.getVersion() + 1);
pa.setDateTime(currentTime);
pa.setUpdateTime(currentTime);
platformAccountMapper.updateByPrimaryKeySelective(pa);
老师,你这个怎么不用乐观锁,或者在数据库中进行金额的加减操作。
是不考虑并发了吗?
写回答
2回答
-
梨多情
提问者
2020-03-28
1、考虑到系统健壮性,即便前面验证过了,后面存在并发问题点操作,不是也应该做相应的处理,防止极端情况的出现。
2、如果只是单纯的版本号变更,那么这个版本号的作用是什么啊?
00 -
阿神
2020-03-28
前面已经验证了吧,分布式锁
00
相似问题