新版的Mybatis-Plus使用乐观锁,MP_OPTLOCK_VERSION_ORIGINAL与新版插件的使用方法
在旧版的配置类我们一般直接注册就行了
// 注册乐观锁插件
@Bean
public OptimisticLockerInterceptor optimisticLockerInnerInterceptor() {
return new OptimisticLockerInterceptor();
}
然后在版本3.4.0开始废弃了这种用法,我们可以看到源码提供的注释
旧版:
新版:
新版增加了MybatisPlusInterceptor,这个相当于总的拦截器类,把原来的那些类放到上面成为内部类,用了跟spring一样的思想
我们可以通过这个方法,配置之前的插件,而且他还是一个List集合,我们可以同时配置多个插件,拿乐观锁插件与分页插件来说来说:
// 注册乐观锁插件与分页插件
/**
* 新的分页插件,一缓和二缓遵循mybatis的规则,需要设置 MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题(该属性会在旧插件移除后一同移除)
*/
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
//分页插件
mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
//乐观锁插件
mybatisPlusInterceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
return mybatisPlusInterceptor;
}
旧版需要注册多个bean才能配置
// 注册乐观锁插件
@Bean
public OptimisticLockerInterceptor optimisticLockerInterceptor() {
return new OptimisticLockerInterceptor();
}
// 分页插件
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
这样就能正常使用乐观锁与分页插件了了,其他插件同理