浏览代码

优化UpdateWrapper的set的val值存到map里

miemie 7 年之前
父节点
当前提交
f06e1d9365

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

@@ -15,17 +15,17 @@
  */
 package com.baomidou.mybatisplus.core.conditions.update;
 
-import static java.util.stream.Collectors.joining;
+import com.baomidou.mybatisplus.core.conditions.AbstractLambdaWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.sql.SqlUtils;
+import com.baomidou.mybatisplus.core.toolkit.support.Property;
 
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import com.baomidou.mybatisplus.core.conditions.AbstractLambdaWrapper;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-import com.baomidou.mybatisplus.core.toolkit.sql.SqlUtils;
-import com.baomidou.mybatisplus.core.toolkit.support.Property;
+import static java.util.stream.Collectors.joining;
 
 /**
  * <p>
@@ -62,7 +62,7 @@ public class LambdaUpdateWrapper<T> extends AbstractLambdaWrapper<T, LambdaUpdat
 
     public LambdaUpdateWrapper<T> set(boolean condition, Property<T, ?> column, Object val) {
         if (condition) {
-            sqlSet.add(String.format("%s=%s", columnToString(column), val));
+            sqlSet.add(String.format("%s=%s", columnToString(column), formatSql("{0}", val)));
         }
         return typedThis();
     }

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

@@ -15,15 +15,16 @@
  */
 package com.baomidou.mybatisplus.core.conditions.update;
 
-import static java.util.stream.Collectors.joining;
+import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.sql.SqlUtils;
 
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import static java.util.stream.Collectors.joining;
 
 /**
  * <p>
@@ -64,7 +65,7 @@ public class UpdateWrapper<T> extends AbstractWrapper<T, String, UpdateWrapper<T
         if (CollectionUtils.isEmpty(sqlSet)) {
             return null;
         }
-        return sqlSet.stream().collect(joining(","));
+        return SqlUtils.stripSqlInjection(sqlSet.stream().collect(joining(",")));
     }
 
     /**
@@ -92,7 +93,7 @@ public class UpdateWrapper<T> extends AbstractWrapper<T, String, UpdateWrapper<T
      */
     public UpdateWrapper<T> set(boolean condition, String column, Object val) {
         if (condition) {
-            sqlSet.add(String.format("%s=%s", column, val));
+            sqlSet.add(String.format("%s=%s", column, formatSql("{0}", val)));
         }
         return typedThis();
     }