新版的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();
}
這樣就能正常使用樂觀鎖與分頁插件了了,其他插件同理