Bläddra i källkod

重写动态语句生成(生成执行SQL将不再包含换行符).

https://github.com/baomidou/mybatis-plus/issues/6187
nieqiurong 5 månader sedan
förälder
incheckning
eddde545e1

+ 4 - 2
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/MybatisXMLScriptBuilder.java

@@ -15,6 +15,7 @@
  */
 package com.baomidou.mybatisplus.core;
 
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import org.apache.ibatis.builder.BaseBuilder;
 import org.apache.ibatis.builder.BuilderException;
@@ -130,10 +131,11 @@ public class MybatisXMLScriptBuilder extends BaseBuilder {
         for (int i = 0; i < children.getLength(); i++) {
             XNode child = node.newXNode(children.item(i));
             if (child.getNode().getNodeType() == Node.CDATA_SECTION_NODE || child.getNode().getNodeType() == Node.TEXT_NODE) {
-                String text = cacheStr(child.getStringBody(""));
-                if (text.trim().isEmpty()) {
+                String text = cacheStr(child.getStringBody("")).trim();
+                if (text.isEmpty()) {
                     continue;
                 }
+                text += StringPool.SPACE;
                 TextSqlNode textSqlNode = new TextSqlNode(text);
                 if (textSqlNode.isDynamic()) {
                     contents.add(textSqlNode);

+ 1 - 1
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/injector/AbstractMethod.java

@@ -442,7 +442,7 @@ public abstract class AbstractMethod implements Constants {
      * @since 3.5.3.2
      */
     public SqlSource createSqlSource(Configuration configuration, String script, Class<?> parameterType) {
-        return languageDriver.createSqlSource(configuration, SqlSourceBuilder.removeExtraWhitespaces(script), parameterType);
+        return languageDriver.createSqlSource(configuration, script, parameterType);
     }
 
 }