From 233c226dca7a1e1359f45ecba9a4de27b8ced298 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Fri, 26 Dec 2025 11:34:22 +0800 Subject: [PATCH] =?UTF-8?q?=E7=B2=BE=E7=AE=80sql?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/czg/config/MybatisFlexConfig.java | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/cash-common/cash-common-api-config/src/main/java/com/czg/config/MybatisFlexConfig.java b/cash-common/cash-common-api-config/src/main/java/com/czg/config/MybatisFlexConfig.java index d9731bd40..b322c12a0 100644 --- a/cash-common/cash-common-api-config/src/main/java/com/czg/config/MybatisFlexConfig.java +++ b/cash-common/cash-common-api-config/src/main/java/com/czg/config/MybatisFlexConfig.java @@ -1,5 +1,6 @@ package com.czg.config; +import cn.hutool.core.util.StrUtil; import com.mybatisflex.core.audit.AuditManager; import lombok.extern.slf4j.Slf4j; import org.springframework.context.annotation.Configuration; @@ -17,8 +18,24 @@ public class MybatisFlexConfig { //设置 SQL 审计收集器 AuditManager.setMessageCollector(auditMessage -> log.info("[sql] time: {}, size: {}, sql:\n{}", - auditMessage.getElapsedTime(), auditMessage.getQueryCount(), auditMessage.getFullSql()) - ); + auditMessage.getElapsedTime(), auditMessage.getQueryCount(), compressSql(auditMessage.getFullSql()))); } + /** + * 精简SQL:去除多余换行、制表符、连续空格,保留语法必需空格 + * + * @param originalSql 原始带换行/空格的SQL + * @return 精简后的SQL + */ + public static String compressSql(String originalSql) { + if (StrUtil.isBlank(originalSql)) { + return ""; + } + // 1. 替换所有换行、制表符为单个空格 + String tempSql = originalSql.replaceAll("\\r\\n|\\r|\\n|\\t", " "); + // 2. 替换多个连续空格为单个空格 + tempSql = tempSql.replaceAll("\\s+", " "); + // 3. 去除首尾空格 + return tempSql.trim(); + } }