From 69b9a4db2b76d201f92c2f98114fd13cf6ef4e71 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期六, 15 五月 2021 14:27:29 +0800
Subject: [PATCH] update 通用Service接口 增加自定义vo转换函数
---
ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java | 86 +++++++++++++++++++++++-------------------
1 files changed, 47 insertions(+), 39 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 bdd26a5..bce2150 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,28 +1,43 @@
package com.ruoyi.framework.config;
import com.baomidou.mybatisplus.annotation.DbType;
-import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
-import com.baomidou.mybatisplus.core.incrementer.IKeyGenerator;
-import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
-import com.baomidou.mybatisplus.extension.incrementer.H2KeyGenerator;
-import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.inner.IllegalSQLInnerInterceptor;
+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.baomidou.mybatisplus.extension.plugins.pagination.optimize.JsqlParserCountOptimize;
+import com.ruoyi.framework.mybatisplus.CreateAndUpdateMetaObjectHandler;
+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
+// 鎸囧畾瑕佹壂鎻忕殑Mapper绫荤殑鍖呯殑璺緞
+@MapperScan("${mybatis-plus.mapperPackage}")
public class MybatisPlusConfig {
+
+ @Bean
+ public MybatisPlusInterceptor mybatisPlusInterceptor() {
+ MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+ // 鍒嗛〉鎻掍欢
+ interceptor.addInnerInterceptor(paginationInnerInterceptor());
+ // 涔愯閿佹彃浠�
+ interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor());
+ // 闃绘柇鎻掍欢
+// interceptor.addInnerInterceptor(blockAttackInnerInterceptor());
+ return interceptor;
+ }
/**
* 鍒嗛〉鎻掍欢锛岃嚜鍔ㄨ瘑鍒暟鎹簱绫诲瀷
+ * https://baomidou.com/guide/interceptor-pagination.html
*/
- @Bean
public PaginationInnerInterceptor paginationInnerInterceptor() {
PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
// 璁剧疆鏁版嵁搴撶被鍨嬩负mysql
@@ -33,56 +48,33 @@
}
/**
- * 鏂扮殑鍒嗛〉鎻掍欢,涓�缂撳拰浜岀紦閬靛惊mybatis鐨勮鍒�,闇�瑕佽缃� MybatisConfiguration#useDeprecatedExecutor = false 閬垮厤缂撳瓨鍑虹幇闂(璇ュ睘鎬т細鍦ㄦ棫鎻掍欢绉婚櫎鍚庝竴鍚岀Щ闄�)
- */
- @Bean
- public ConfigurationCustomizer configurationCustomizer() {
- return configuration -> configuration.setUseDeprecatedExecutor(false);
- }
-
- /**
* 涔愯閿佹彃浠�
+ * https://baomidou.com/guide/interceptor-optimistic-locker.html
*/
- @Bean
public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() {
return new OptimisticLockerInnerInterceptor();
}
/**
* 濡傛灉鏄鍏ㄨ〃鐨勫垹闄ゆ垨鏇存柊鎿嶄綔锛屽氨浼氱粓姝㈣鎿嶄綔
+ * https://baomidou.com/guide/interceptor-block-attack.html
*/
- @Bean
- public BlockAttackInnerInterceptor blockAttackInnerInterceptor() {
- return new BlockAttackInnerInterceptor();
- }
+// public BlockAttackInnerInterceptor blockAttackInnerInterceptor() {
+// return new BlockAttackInnerInterceptor();
+// }
/**
* sql鎬ц兘瑙勮寖鎻掍欢(鍨冨溇SQL鎷︽埅)
* 濡傛湁闇�瑕佸彲浠ュ惎鐢�
*/
-// @Bean
// public IllegalSQLInnerInterceptor illegalSQLInnerInterceptor() {
// return new IllegalSQLInnerInterceptor();
-// }
-
- /**
- * Sequence涓婚敭绛栫暐 IdType.INPUT 鏃朵娇鐢�
- * 鍐呯疆鏀寔锛�
- *
- * DB2KeyGenerator
- * H2KeyGenerator
- * KingbaseKeyGenerator
- * OracleKeyGenerator
- * PostgreKeyGenerator
- */
-// @Bean
-// public IKeyGenerator keyGenerator() {
-// return new H2KeyGenerator();
// }
/**
* 鑷畾涔変富閿瓥鐣�
+ * https://baomidou.com/guide/id-generator.html
*/
// @Bean
// public IdentifierGenerator idGenerator() {
@@ -91,11 +83,27 @@
/**
* 鍏冨璞″瓧娈靛~鍏呮帶鍒跺櫒
+ * https://baomidou.com/guide/auto-fill-metainfo.html
+ */
+ @Bean
+ public MetaObjectHandler metaObjectHandler() {
+ return new CreateAndUpdateMetaObjectHandler();
+ }
+
+ /**
+ * sql娉ㄥ叆鍣ㄩ厤缃�
+ * https://baomidou.com/guide/sql-injector.html
*/
// @Bean
-// public MetaObjectHandler metaObjectHandler() {
-// return new MyMetaObjectHandler();
+// public ISqlInjector sqlInjector() {
+// return new DefaultSqlInjector();
// }
+ /**
+ * TenantLineInnerInterceptor 澶氱鎴锋彃浠�
+ * https://baomidou.com/guide/interceptor-tenant-line.html
+ * DynamicTableNameInnerInterceptor 鍔ㄦ�佽〃鍚嶆彃浠�
+ * https://baomidou.com/guide/interceptor-dynamic-table-name.html
+ */
}
--
Gitblit v1.9.3