乐观锁,以及在MP中的实现

乐观锁,以及在MP中的实现,第1张

乐观锁,以及在MP中的实现 乐观锁 : 故名思意十分乐观,它总是认为不会出现问题,无论干什么不去上锁!如果出现了问题, 再次更新值测试。乐观锁可以保证在并发情况下数据的准确性。 乐观锁实现方式: 取出记录时,获取当前 version 更新时,带上这个version 执行更新时, set version = newVersion where version = oldVersion 如果version不对,就更新失败
乐观锁: 1 、先查询,获得版本号 version = 1 -- A update user set name = "kuangshen" , version = version + 1 where id = 2 and version = 1 -- B 线程抢先完成,这个时候 version = 2 ,会导致 A 修改失败! update user set name = "kuangshen" , version = version + 1 where id = 2 and version = 1

Mybatis-Plus中的乐观锁插件

(1)给数据库中增加version字段

(2)我们实体类加对应的字段

@Version // 乐观锁 Version 注解 private Integer version ;

(3) 注册组件

@EnableTransactionManagement @Configuration // 配置类 public class MyBatisPlusConfig { // 注册乐观锁插件 @Bean public OptimisticLockerInterceptor optimisticLockerInterceptor () { return new OptimisticLockerInterceptor (); } }

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5681185.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-17
下一篇2022-12-17

发表评论

登录后才能评论

评论列表(0条)

    保存