MP乐观锁
MP乐观锁
在mp配置类中添加乐观锁插件
1
2
3
4
5
6
7
8
9
10
11
12@Configuration
public class MpConfig {
/**
* 乐观锁插件
* @return
*/
@Bean
public OptimisticLockerInterceptor optimisticLockerInterceptor() {
return new OptimisticLockerInterceptor();
}
}给类上添加
version
属性1
2
3@Version
@TableField(fill = FieldFill.INSERT)
private Integer version;插入时自动填充
1
2
3
4
5
6
7
8
9
10
11
12
13
14@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
this.setFieldValByName("createTime",new Date(),metaObject);
this.setFieldValByName("updateTime",new Date(),metaObject);
this.setFieldValByName("version",1,metaObject);
}
@Override
public void updateFill(MetaObject metaObject) {
this.setFieldValByName("updateTime",new Date(),metaObject);
}
}每次要修改时先查询出要修改的数据,修改后再放回数据库,version值会自动加一
MP乐观锁
http://xwww12.github.io/2022/10/11/数据库/mysql/mybatis-plus/MP乐观锁/