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;
}
相关推荐
sunnyday04262 小时前
Spring Boot 自定义 Starter 实战:从创建到使用的完整指南
spring boot·后端·mybatis
想用offer打牌2 小时前
2025年总结:一个树苗倔强生长
java·后端·开源·go
小北方城市网2 小时前
Redis 分布式锁与缓存三大问题解决方案
spring boot·redis·分布式·后端·缓存·wpf·mybatis
哪里不会点哪里.2 小时前
Spring 核心原理解析:它到底解决了什么问题?
java·后端·spring
小杍随笔3 小时前
【Rust Cargo 目录迁移到 D 盘:不改变安装路径和环境变量的终极方案】
开发语言·后端·rust
沐雨风栉4 小时前
用 Kavita+cpolar 把数字书房装进口袋
服务器·开发语言·数据库·后端·golang
郑州光合科技余经理5 小时前
同城020系统架构实战:中台化设计与部署
java·大数据·开发语言·后端·系统架构·uni-app·php
Mr -老鬼5 小时前
UpdateEC - EasyClick 项目热更新系统(Rust构建)
开发语言·后端·rust
一 乐6 小时前
学生宿舍管理|基于springboot + vue学生宿舍管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·助农电商系统
NuageL6 小时前
SpringBoot使用@Scheduled注解实现定时任务
java·spring boot·后端