From 1d54ef57c7cc1d85168f122cabc73d6397333755 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期二, 21 十二月 2021 10:54:57 +0800
Subject: [PATCH] update 更新 nginx 配置文件关于 https 可能遇到的问题与解决方案说明
---
ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java | 108 +++++++++++++++++++++++++++++++-----------------------
1 files changed, 62 insertions(+), 46 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 fb9c7f7..5daaa9a 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,88 +1,76 @@
package com.ruoyi.framework.config;
-import com.baomidou.mybatisplus.annotation.DbType;
+import cn.hutool.core.net.NetUtil;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
-import com.baomidou.mybatisplus.core.incrementer.IKeyGenerator;
+import com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator;
import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
+import com.baomidou.mybatisplus.core.injector.AbstractMethod;
import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
import com.baomidou.mybatisplus.core.injector.ISqlInjector;
-import com.baomidou.mybatisplus.extension.incrementer.H2KeyGenerator;
+import com.baomidou.mybatisplus.core.metadata.TableInfo;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.inner.IllegalSQLInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
-import com.ruoyi.framework.mybatisplus.CreateAndUpdateMetaObjectHandler;
+import com.ruoyi.common.core.mybatisplus.methods.InsertAll;
+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;
+import java.util.List;
+
+/**
+ * mybatis-plus閰嶇疆绫�(涓嬫柟娉ㄩ噴鏈夋彃浠朵粙缁�)
+ *
+ * @author Lion Li
+ */
@EnableTransactionManagement(proxyTargetClass = true)
@Configuration
+@MapperScan("${mybatis-plus.mapperPackage}")
public class MybatisPlusConfig {
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+ // 鏁版嵁鏉冮檺澶勭悊
+ interceptor.addInnerInterceptor(dataPermissionInterceptor());
// 鍒嗛〉鎻掍欢
interceptor.addInnerInterceptor(paginationInnerInterceptor());
// 涔愯閿佹彃浠�
interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor());
- // 闃绘柇鎻掍欢
- interceptor.addInnerInterceptor(blockAttackInnerInterceptor());
return interceptor;
}
+ /**
+ * 鏁版嵁鏉冮檺鎷︽埅鍣�
+ */
+ public PlusDataPermissionInterceptor dataPermissionInterceptor() {
+ return new PlusDataPermissionInterceptor();
+ }
+
/**
* 鍒嗛〉鎻掍欢锛岃嚜鍔ㄨ瘑鍒暟鎹簱绫诲瀷
- * https://baomidou.com/guide/interceptor-pagination.html
*/
public PaginationInnerInterceptor paginationInnerInterceptor() {
PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
- // 璁剧疆鏁版嵁搴撶被鍨嬩负mysql
- paginationInnerInterceptor.setDbType(DbType.MYSQL);
// 璁剧疆鏈�澶у崟椤甸檺鍒舵暟閲忥紝榛樿 500 鏉★紝-1 涓嶅彈闄愬埗
paginationInnerInterceptor.setMaxLimit(-1L);
+ // 鍒嗛〉鍚堢悊鍖�
+ paginationInnerInterceptor.setOverflow(true);
return paginationInnerInterceptor;
}
/**
* 涔愯閿佹彃浠�
- * https://baomidou.com/guide/interceptor-optimistic-locker.html
*/
public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() {
return new OptimisticLockerInnerInterceptor();
}
/**
- * 濡傛灉鏄鍏ㄨ〃鐨勫垹闄ゆ垨鏇存柊鎿嶄綔锛屽氨浼氱粓姝㈣鎿嶄綔
- * https://baomidou.com/guide/interceptor-block-attack.html
- */
- public BlockAttackInnerInterceptor blockAttackInnerInterceptor() {
- return new BlockAttackInnerInterceptor();
- }
-
- /**
- * sql鎬ц兘瑙勮寖鎻掍欢(鍨冨溇SQL鎷︽埅)
- * 濡傛湁闇�瑕佸彲浠ュ惎鐢�
- */
-// public IllegalSQLInnerInterceptor illegalSQLInnerInterceptor() {
-// return new IllegalSQLInnerInterceptor();
-// }
-
-
- /**
- * 鑷畾涔変富閿瓥鐣�
- * https://baomidou.com/guide/id-generator.html
- */
-// @Bean
-// public IdentifierGenerator idGenerator() {
-// return new CustomIdGenerator();
-// }
-
- /**
* 鍏冨璞″瓧娈靛~鍏呮帶鍒跺櫒
- * https://baomidou.com/guide/auto-fill-metainfo.html
*/
@Bean
public MetaObjectHandler metaObjectHandler() {
@@ -91,18 +79,46 @@
/**
* sql娉ㄥ叆鍣ㄩ厤缃�
- * https://baomidou.com/guide/sql-injector.html
*/
-// @Bean
-// public ISqlInjector sqlInjector() {
-// return new DefaultSqlInjector();
-// }
+ @Bean
+ public ISqlInjector sqlInjector() {
+ return new DefaultSqlInjector() {
+ @Override
+ public List<AbstractMethod> getMethodList(Class<?> mapperClass, TableInfo tableInfo) {
+ List<AbstractMethod> methodList = super.getMethodList(mapperClass, tableInfo);
+ methodList.add(new InsertAll());
+ return methodList;
+ }
+ };
+ }
+
+ /**
+ * 浣跨敤缃戝崱淇℃伅缁戝畾闆姳鐢熸垚鍣�
+ * 闃叉闆嗙兢闆姳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/guide/interceptor-tenant-line.html
+ * https://baomidou.com/pages/aef2f2/
* DynamicTableNameInnerInterceptor 鍔ㄦ�佽〃鍚嶆彃浠�
- * https://baomidou.com/guide/interceptor-dynamic-table-name.html
+ * https://baomidou.com/pages/2a45ff/
*/
}
--
Gitblit v1.9.3