Java mybatis-plus集成乐观锁

相关概念

悲观锁(Pessimistic Lock)

每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁

乐观锁(Optimistic Lock)

每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制

mybatis-plus集成乐观锁

实体类添加@Version

less 复制代码
/**
 * 版本号,用乐观锁
 */
@Version
private Integer version;

添加对乐观锁的支持

在启动类放入乐观锁的拦截器

java 复制代码
/**
 * mybatis-plus乐观锁支持
 * @return
 */
@Bean
public MybatisPlusInterceptor optimisticLockerInterceptor(){
    MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
    interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
    return interceptor;
}
相关推荐
噢,我明白了22 分钟前
java中唯一键和幂等键的应用
java·后端
GreenTea37 分钟前
我把 Agent 的 while 循环拆掉了:一种你可能没想到的 Agent 架构
前端·后端·架构
考虑考虑40 分钟前
synchronized字符串常量
java·后端·java ee
颜进强2 小时前
16 · NestJS LifecycleEvents 生命周期事件:五个钩子、三条边界,和 rag-server 的优雅停机
前端·后端·ai编程
GetcharZp2 小时前
定位不再一个个吐坐标:英伟达 LocateAnything 上手全攻略
后端
郑州光合科技余经理3 小时前
同城电商系统:库存变更怎么同步到订单
java·开发语言·前端·后端·uni-app·php·ai编程
我叫黑大帅3 小时前
Go日志库工程选型与逃逸分析评测报告
后端·面试·go
IT_陈寒6 小时前
JavaScript闭包的这个坑,我居然今天才爬出来
前端·人工智能·后端
Thneonl6 小时前
消息队列选型决策树:RabbitMQ vs Kafka vs Redis Streams
后端·架构