Browse Source

日常优化

miemie 5 years ago
parent
commit
ac4625b291

+ 5 - 6
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/Wrapper.java

@@ -20,10 +20,7 @@ import com.baomidou.mybatisplus.core.conditions.segments.NormalSegmentList;
 import com.baomidou.mybatisplus.core.metadata.TableFieldInfo;
 import com.baomidou.mybatisplus.core.metadata.TableInfo;
 import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-import com.baomidou.mybatisplus.core.toolkit.Constants;
-import com.baomidou.mybatisplus.core.toolkit.ReflectionKit;
-import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.*;
 
 import java.util.Objects;
 
@@ -78,11 +75,11 @@ public abstract class Wrapper<T> implements ISqlSegment {
                 if (normal.isEmpty()) {
                     return sqlSegment;
                 } else {
-                    return Constants.WHERE + " " + sqlSegment;
+                    return Constants.WHERE + StringPool.SPACE + sqlSegment;
                 }
             }
         }
-        return StringUtils.EMPTY;
+        return StringPool.EMPTY;
     }
 
     /**
@@ -144,6 +141,8 @@ public abstract class Wrapper<T> implements ISqlSegment {
                 return true;
             case NOT_EMPTY:
                 return StringUtils.checkValNotNull(ReflectionKit.getMethodValue(entity, e.getProperty()));
+            case NEVER:
+                return false;
             default:
                 return Objects.nonNull(ReflectionKit.getMethodValue(entity, e.getProperty()));
         }

+ 1 - 1
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/segments/AbstractISegmentList.java

@@ -74,7 +74,7 @@ public abstract class AbstractISegmentList extends ArrayList<ISqlSegment> implem
     /**
      * 刷新属性 lastValue
      */
-    private void flushLastValue(List<? extends ISqlSegment> list) {
+    private void flushLastValue(List<ISqlSegment> list) {
         lastValue = list.get(list.size() - 1);
     }
 

+ 2 - 1
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/segments/NormalSegmentList.java

@@ -86,6 +86,7 @@ public class NormalSegmentList extends AbstractISegmentList {
         if (MatchSegment.AND_OR.match(lastValue)) {
             removeAndFlushLast();
         }
-        return this.stream().map(ISqlSegment::getSqlSegment).collect(Collectors.joining(SPACE));
+        final String str = this.stream().map(ISqlSegment::getSqlSegment).collect(Collectors.joining(SPACE));
+        return (str.startsWith(LEFT_BRACKET) && str.endsWith(RIGHT_BRACKET)) ? str : (LEFT_BRACKET + str + RIGHT_BRACKET);
     }
 }

+ 1 - 5
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/toolkit/StringUtils.java

@@ -42,7 +42,7 @@ public class StringUtils {
     /**
      * 空字符
      */
-    public static final String EMPTY = "";
+    public static final String EMPTY = StringPool.EMPTY;
     /**
      * 字符串 is
      */
@@ -51,10 +51,6 @@ public class StringUtils {
      * 下划线字符
      */
     public static final char UNDERLINE = '_';
-    /**
-     * 占位符
-     */
-    public static final String PLACE_HOLDER = "{%s}";
     /**
      * MP 内定义的 SQL 占位符表达式,匹配诸如 {0},{1},{2} ... 的形式
      */