feat(data/mp): 新增乐观锁插件启用配置(默认关闭)

This commit is contained in:
2024-09-10 22:12:56 +08:00
parent f3f57b8a5e
commit 08ef09c9b5
2 changed files with 18 additions and 4 deletions

View File

@@ -59,6 +59,11 @@ public class MyBatisPlusExtensionProperties {
*/ */
private PaginationProperties pagination; private PaginationProperties pagination;
/**
* 启用乐观锁插件
*/
private boolean optimisticLockerEnabled = false;
/** /**
* 启用防全表更新与删除插件 * 启用防全表更新与删除插件
*/ */
@@ -181,6 +186,14 @@ public class MyBatisPlusExtensionProperties {
this.pagination = pagination; this.pagination = pagination;
} }
public boolean isOptimisticLockerEnabled() {
return optimisticLockerEnabled;
}
public void setOptimisticLockerEnabled(boolean optimisticLockerEnabled) {
this.optimisticLockerEnabled = optimisticLockerEnabled;
}
public boolean isBlockAttackPluginEnabled() { public boolean isBlockAttackPluginEnabled() {
return blockAttackPluginEnabled; return blockAttackPluginEnabled;
} }

View File

@@ -20,10 +20,7 @@ import cn.hutool.extra.spring.SpringUtil;
import com.baomidou.mybatisplus.autoconfigure.MybatisPlusPropertiesCustomizer; import com.baomidou.mybatisplus.autoconfigure.MybatisPlusPropertiesCustomizer;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.handler.DataPermissionHandler; import com.baomidou.mybatisplus.extension.plugins.handler.DataPermissionHandler;
import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.*;
import com.baomidou.mybatisplus.extension.plugins.inner.DataPermissionInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.InnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import jakarta.annotation.PostConstruct; import jakarta.annotation.PostConstruct;
import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.annotation.MapperScan;
import org.slf4j.Logger; import org.slf4j.Logger;
@@ -96,6 +93,10 @@ public class MybatisPlusAutoConfiguration {
if (null != paginationProperties && paginationProperties.isEnabled()) { if (null != paginationProperties && paginationProperties.isEnabled()) {
interceptor.addInnerInterceptor(this.paginationInnerInterceptor(paginationProperties)); interceptor.addInnerInterceptor(this.paginationInnerInterceptor(paginationProperties));
} }
// 乐观锁插件
if (properties.isOptimisticLockerEnabled()) {
interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
}
// 防全表更新与删除插件 // 防全表更新与删除插件
if (properties.isBlockAttackPluginEnabled()) { if (properties.isBlockAttackPluginEnabled()) {
interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor()); interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor());