做单页网站,郑州软件开发学校,网站建设专业性的评估,自己做网站都要什么软件引入mybatis-plus依赖#xff0c;注意这里的版本要求 since 3.4.0#xff1b;#xff08;3.4.1,3.4.2已测#xff09; 3.2.0肯定是不支持的#xff0c;无法引入MybatisPlusInterceptor#xff1b; 乐观锁
当要更新一条记录的时候#xff0c;希望这条记录没有被别人更新… 引入mybatis-plus依赖注意这里的版本要求 since 3.4.03.4.1,3.4.2已测 3.2.0肯定是不支持的无法引入MybatisPlusInterceptor 乐观锁
当要更新一条记录的时候希望这条记录没有被别人更新
配置工作
实例化OptimisticLockerInnerInterceptor并添加到MyBatis-Plus的拦截器链中
Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor mybatisPlusInterceptor new MybatisPlusInterceptor();mybatisPlusInterceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());return mybatisPlusInterceptor;
}在Entity中定义version字段并加上Version注解。
Version
private Integer version;参照官网文档 实现方式
取出记录时获取当前version更新时带上这个version执行更新时 set version newVersion where version oldVersion如果version不对就更新失败
注意事项 说明: 支持的数据类型只有:int,Integer,long,Long,Date,Timestamp,LocalDateTime整数类型下newVersion oldVersion 1newVersion会回写到entity中仅支持updateById(id)与update(entity, wrapper)方法entity的版本字段必须有值,否则不会生成乐观锁SQL在update(entity, wrapper)方法下,wrapper不能复用!!! 参考文档
mybatis-plus乐观锁插件 mybatis-plus基于Version注解的乐观锁实现 Mybatis-Plus基于Version注解的乐观锁实现及两个坑