From 6c01241b96f66239aff192f22dce99e1275986ed Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期二, 15 二月 2022 11:07:50 +0800
Subject: [PATCH] fix 回滚代码生成部分优化 修复优化导致的问题
---
ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java | 112 ++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 88 insertions(+), 24 deletions(-)
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java
index 5c56edd..ffd2c15 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java
@@ -1,38 +1,102 @@
package com.ruoyi.framework.config;
-import com.baomidou.mybatisplus.extension.plugins.OptimisticLockerInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.SqlExplainInterceptor;
+import cn.hutool.core.net.NetUtil;
+import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
+import com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator;
+import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
+import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import com.ruoyi.framework.handler.CreateAndUpdateMetaObjectHandler;
+import com.ruoyi.framework.interceptor.PlusDataPermissionInterceptor;
+import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
+/**
+ * mybatis-plus閰嶇疆绫�(涓嬫柟娉ㄩ噴鏈夋彃浠朵粙缁�)
+ *
+ * @author Lion Li
+ */
@EnableTransactionManagement(proxyTargetClass = true)
@Configuration
+@MapperScan("${mybatis-plus.mapperPackage}")
public class MybatisPlusConfig {
- /**
- * 鍒嗛〉鎻掍欢锛岃嚜鍔ㄨ瘑鍒暟鎹簱绫诲瀷
- */
- @Bean
- public PaginationInterceptor paginationInterceptor() {
- return new PaginationInterceptor();
- }
+ @Bean
+ public MybatisPlusInterceptor mybatisPlusInterceptor() {
+ MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+ // 鏁版嵁鏉冮檺澶勭悊
+ interceptor.addInnerInterceptor(dataPermissionInterceptor());
+ // 鍒嗛〉鎻掍欢
+ interceptor.addInnerInterceptor(paginationInnerInterceptor());
+ // 涔愯閿佹彃浠�
+ interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor());
+ return interceptor;
+ }
- /**
- * 涔愯閿佹彃浠�
- */
- @Bean
- public OptimisticLockerInterceptor optimisticLockerInterceptor() {
- return new OptimisticLockerInterceptor();
- }
+ /**
+ * 鏁版嵁鏉冮檺鎷︽埅鍣�
+ */
+ public PlusDataPermissionInterceptor dataPermissionInterceptor() {
+ return new PlusDataPermissionInterceptor();
+ }
- /**
- * 濡傛灉鏄鍏ㄨ〃鐨勫垹闄ゆ垨鏇存柊鎿嶄綔锛屽氨浼氱粓姝㈣鎿嶄綔
- */
- @Bean
- public SqlExplainInterceptor sqlExplainInterceptor() {
- return new SqlExplainInterceptor();
- }
+ /**
+ * 鍒嗛〉鎻掍欢锛岃嚜鍔ㄨ瘑鍒暟鎹簱绫诲瀷
+ */
+ public PaginationInnerInterceptor paginationInnerInterceptor() {
+ PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
+ // 璁剧疆鏈�澶у崟椤甸檺鍒舵暟閲忥紝榛樿 500 鏉★紝-1 涓嶅彈闄愬埗
+ paginationInnerInterceptor.setMaxLimit(-1L);
+ // 鍒嗛〉鍚堢悊鍖�
+ paginationInnerInterceptor.setOverflow(true);
+ return paginationInnerInterceptor;
+ }
+
+ /**
+ * 涔愯閿佹彃浠�
+ */
+ public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() {
+ return new OptimisticLockerInnerInterceptor();
+ }
+
+ /**
+ * 鍏冨璞″瓧娈靛~鍏呮帶鍒跺櫒
+ */
+ @Bean
+ public MetaObjectHandler metaObjectHandler() {
+ return new CreateAndUpdateMetaObjectHandler();
+ }
+
+ /**
+ * 浣跨敤缃戝崱淇℃伅缁戝畾闆姳鐢熸垚鍣�
+ * 闃叉闆嗙兢闆姳ID閲嶅
+ */
+ @Bean
+ public IdentifierGenerator idGenerator() {
+ return new DefaultIdentifierGenerator(NetUtil.getLocalhost());
+ }
+
+ /**
+ * PaginationInnerInterceptor 鍒嗛〉鎻掍欢锛岃嚜鍔ㄨ瘑鍒暟鎹簱绫诲瀷
+ * https://baomidou.com/pages/97710a/
+ * OptimisticLockerInnerInterceptor 涔愯閿佹彃浠�
+ * https://baomidou.com/pages/0d93c0/
+ * MetaObjectHandler 鍏冨璞″瓧娈靛~鍏呮帶鍒跺櫒
+ * https://baomidou.com/pages/4c6bcf/
+ * ISqlInjector sql娉ㄥ叆鍣�
+ * https://baomidou.com/pages/42ea4a/
+ * BlockAttackInnerInterceptor 濡傛灉鏄鍏ㄨ〃鐨勫垹闄ゆ垨鏇存柊鎿嶄綔锛屽氨浼氱粓姝㈣鎿嶄綔
+ * https://baomidou.com/pages/f9a237/
+ * IllegalSQLInnerInterceptor sql鎬ц兘瑙勮寖鎻掍欢(鍨冨溇SQL鎷︽埅)
+ * IdentifierGenerator 鑷畾涔変富閿瓥鐣�
+ * https://baomidou.com/pages/568eb2/
+ * TenantLineInnerInterceptor 澶氱鎴锋彃浠�
+ * https://baomidou.com/pages/aef2f2/
+ * DynamicTableNameInnerInterceptor 鍔ㄦ�佽〃鍚嶆彃浠�
+ * https://baomidou.com/pages/2a45ff/
+ */
}
--
Gitblit v1.9.3