Jelajahi Sumber

wrapper 内部 string 传递优化

miemie 6 tahun lalu
induk
melakukan
aa98583cda

+ 8 - 8
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/AbstractWrapper.java

@@ -438,6 +438,14 @@ public abstract class AbstractWrapper<T, R, Children extends AbstractWrapper<T,
         return paramNameValuePairs;
     }
 
+    /**
+     * @param sqlComment SQL注释
+     */
+    public Children sqlComment(String sqlComment) {
+        this.sqlComment = new SharedString(sqlComment);
+        return typedThis;
+    }
+
     @Override
     public String getSqlComment() {
         if (StringUtils.isNotEmpty(sqlComment.getStringValue())) {
@@ -446,14 +454,6 @@ public abstract class AbstractWrapper<T, R, Children extends AbstractWrapper<T,
         return null;
     }
 
-    /**
-     * @param sqlComment SQL注释body
-     */
-    public Children setSqlComment(String sqlComment) {
-        this.sqlComment = new SharedString(sqlComment);
-        return typedThis;
-    }
-
     /**
      * 获取 columnName
      */

+ 1 - 1
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/query/LambdaQueryWrapper.java

@@ -122,6 +122,6 @@ public class LambdaQueryWrapper<T> extends AbstractLambdaWrapper<T, LambdaQueryW
     @Override
     protected LambdaQueryWrapper<T> instance() {
         return new LambdaQueryWrapper<>(entity, entityClass, null, paramNameSeq, paramNameValuePairs,
-            new MergeSegments(), null, null);
+            new MergeSegments(), SharedString.emptyString(), SharedString.emptyString());
     }
 }

+ 1 - 1
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/query/QueryWrapper.java

@@ -116,6 +116,6 @@ public class QueryWrapper<T> extends AbstractWrapper<T, String, QueryWrapper<T>>
     @Override
     protected QueryWrapper<T> instance() {
         return new QueryWrapper<>(entity, entityClass, paramNameSeq, paramNameValuePairs, new MergeSegments(),
-            null, null);
+            SharedString.emptyString(), SharedString.emptyString());
     }
 }

+ 1 - 1
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/update/LambdaUpdateWrapper.java

@@ -102,6 +102,6 @@ public class LambdaUpdateWrapper<T> extends AbstractLambdaWrapper<T, LambdaUpdat
     @Override
     protected LambdaUpdateWrapper<T> instance() {
         return new LambdaUpdateWrapper<>(entity, sqlSet, paramNameSeq, paramNameValuePairs, new MergeSegments(),
-            null, null);
+            SharedString.emptyString(), SharedString.emptyString());
     }
 }

+ 1 - 1
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/update/UpdateWrapper.java

@@ -99,6 +99,6 @@ public class UpdateWrapper<T> extends AbstractWrapper<T, String, UpdateWrapper<T
     @Override
     protected UpdateWrapper<T> instance() {
         return new UpdateWrapper<>(entity, sqlSet, paramNameSeq, paramNameValuePairs, new MergeSegments(),
-            null, null);
+            SharedString.emptyString(), SharedString.emptyString());
     }
 }

+ 0 - 6
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/toolkit/Wrappers.java

@@ -206,12 +206,6 @@ public final class Wrappers {
             throw new UnsupportedOperationException();
         }
 
-        @SuppressWarnings("EmptyMethod")
-        @Override
-        public String getParamAlias() {
-            return super.getParamAlias();
-        }
-
         @Override
         public String getSqlSegment() {
             return null;

+ 7 - 2
mybatis-plus-extension/src/main/kotlin/com/baomidou/mybatisplus/extension/kotlin/KtQueryWrapper.kt

@@ -15,6 +15,7 @@
  */
 package com.baomidou.mybatisplus.extension.kotlin
 
+import com.baomidou.mybatisplus.core.conditions.SharedString
 import com.baomidou.mybatisplus.core.conditions.query.Query
 import com.baomidou.mybatisplus.core.conditions.segments.MergeSegments
 import com.baomidou.mybatisplus.core.metadata.TableFieldInfo
@@ -49,13 +50,16 @@ class KtQueryWrapper<T : Any> : AbstractKtWrapper<T, KtQueryWrapper<T>>, Query<K
     }
 
     internal constructor(entity: T, entityClass: Class<T>?, sqlSelect: String?, paramNameSeq: AtomicInteger,
-                         paramNameValuePairs: Map<String, Any>, mergeSegments: MergeSegments) {
+                         paramNameValuePairs: Map<String, Any>, mergeSegments: MergeSegments,
+                         lastSql: SharedString, sqlComment: SharedString) {
         this.setEntity(entity)
         this.paramNameSeq = paramNameSeq
         this.paramNameValuePairs = paramNameValuePairs
         this.expression = mergeSegments
         this.sqlSelect = sqlSelect
         this.entityClass = entityClass
+        this.lastSql = lastSql
+        this.sqlComment = sqlComment
     }
 
     /**
@@ -108,6 +112,7 @@ class KtQueryWrapper<T : Any> : AbstractKtWrapper<T, KtQueryWrapper<T>>, Query<K
      * 故 sqlSelect 不向下传递
      */
     override fun instance(): KtQueryWrapper<T> {
-        return KtQueryWrapper(entity, entityClass, null, paramNameSeq, paramNameValuePairs, expression)
+        return KtQueryWrapper(entity, entityClass, null, paramNameSeq, paramNameValuePairs, expression,
+            SharedString.emptyString(), SharedString.emptyString())
     }
 }

+ 6 - 2
mybatis-plus-extension/src/main/kotlin/com/baomidou/mybatisplus/extension/kotlin/KtUpdateWrapper.kt

@@ -15,6 +15,7 @@
  */
 package com.baomidou.mybatisplus.extension.kotlin
 
+import com.baomidou.mybatisplus.core.conditions.SharedString
 import com.baomidou.mybatisplus.core.conditions.segments.MergeSegments
 import com.baomidou.mybatisplus.core.conditions.update.Update
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils
@@ -49,11 +50,13 @@ class KtUpdateWrapper<T : Any> : AbstractKtWrapper<T, KtUpdateWrapper<T>>, Updat
     }
 
     internal constructor(entity: T, paramNameSeq: AtomicInteger, paramNameValuePairs: Map<String, Any>,
-                         mergeSegments: MergeSegments) {
+                         mergeSegments: MergeSegments, lastSql: SharedString, sqlComment: SharedString) {
         this.setEntity(entity)
         this.paramNameSeq = paramNameSeq
         this.paramNameValuePairs = paramNameValuePairs
         this.expression = mergeSegments
+        this.lastSql = lastSql
+        this.sqlComment = sqlComment
     }
 
     override fun getSqlSet(): String? {
@@ -76,6 +79,7 @@ class KtUpdateWrapper<T : Any> : AbstractKtWrapper<T, KtUpdateWrapper<T>>, Updat
     }
 
     override fun instance(): KtUpdateWrapper<T> {
-        return KtUpdateWrapper(entity, paramNameSeq, paramNameValuePairs, expression)
+        return KtUpdateWrapper(entity, paramNameSeq, paramNameValuePairs, expression, SharedString.emptyString(),
+            SharedString.emptyString())
     }
 }