fix sqlLog

This commit is contained in:
Looly 2023-07-21 00:04:23 +08:00
parent 7df5a80e87
commit 04a257aec8
3 changed files with 31 additions and 23 deletions

View File

@ -24,7 +24,6 @@ import org.dromara.hutool.setting.Setting;
* @author Luxiaolei * @author Luxiaolei
*/ */
public final class DbUtil { public final class DbUtil {
private final static Log log = Log.get();
/** /**
* 从配置文件中读取SQL打印选项读取后会去除相应属性 * 从配置文件中读取SQL打印选项读取后会去除相应属性
@ -34,25 +33,24 @@ public final class DbUtil {
*/ */
public static void setShowSqlGlobal(final Setting setting) { public static void setShowSqlGlobal(final Setting setting) {
// 初始化SQL显示 // 初始化SQL显示
final boolean isShowSql = Convert.toBoolean(setting.remove(DSKeys.KEY_SHOW_SQL), false); final boolean isShowSql = Convert.toBoolean(setting.remove(DSKeys.KEY_SHOW_SQL));
final boolean isFormatSql = Convert.toBoolean(setting.remove(DSKeys.KEY_FORMAT_SQL), false); final boolean isFormatSql = Convert.toBoolean(setting.remove(DSKeys.KEY_FORMAT_SQL));
final boolean isShowParams = Convert.toBoolean(setting.remove(DSKeys.KEY_SHOW_PARAMS), false); final boolean isShowParams = Convert.toBoolean(setting.remove(DSKeys.KEY_SHOW_PARAMS));
String sqlLevelStr = setting.remove(DSKeys.KEY_SQL_LEVEL); String sqlLevelStr = setting.remove(DSKeys.KEY_SQL_LEVEL);
if (null != sqlLevelStr) { if (null != sqlLevelStr) {
sqlLevelStr = sqlLevelStr.toUpperCase(); sqlLevelStr = sqlLevelStr.toUpperCase();
} }
final Level level = Convert.toEnum(Level.class, sqlLevelStr, Level.DEBUG); final Level level = Convert.toEnum(Level.class, sqlLevelStr);
log.debug("Show sql: [{}], format sql: [{}], show params: [{}], level: [{}]", isShowSql, isFormatSql, isShowParams, level);
setShowSqlGlobal(isShowSql, isFormatSql, isShowParams, level); setShowSqlGlobal(isShowSql, isFormatSql, isShowParams, level);
} }
/** /**
* 设置全局配置是否通过debug日志显示SQL * 设置全局配置是否通过debug日志显示SQL
* *
* @param isShowSql 是否显示SQL * @param isShowSql 是否显示SQL{@code null}表示保持默认
* @param isFormatSql 是否格式化显示的SQL * @param isFormatSql 是否格式化显示的SQL{@code null}表示保持默认
* @param isShowParams 是否打印参数 * @param isShowParams 是否打印参数{@code null}表示保持默认
* @param level SQL打印到的日志 * @param level 日志级{@code null}表示保持默认
* @see GlobalDbConfig#setShowSql(boolean, boolean, boolean, Level) * @see GlobalDbConfig#setShowSql(boolean, boolean, boolean, Level)
* @since 4.1.7 * @since 4.1.7
*/ */

View File

@ -112,10 +112,10 @@ public class GlobalDbConfig {
/** /**
* 设置全局配置是否通过debug日志显示SQL * 设置全局配置是否通过debug日志显示SQL
* *
* @param isShowSql 是否显示SQL * @param isShowSql 是否显示SQL{@code null}表示保持默认
* @param isFormatSql 是否格式化显示的SQL * @param isFormatSql 是否格式化显示的SQL{@code null}表示保持默认
* @param isShowParams 是否打印参数 * @param isShowParams 是否打印参数{@code null}表示保持默认
* @param level SQL打印到的日志 * @param level 日志级{@code null}表示保持默认
*/ */
public static void setShowSql(final boolean isShowSql, final boolean isFormatSql, final boolean isShowParams, final Level level) { public static void setShowSql(final boolean isShowSql, final boolean isFormatSql, final boolean isShowParams, final Level level) {
SqlLog.INSTANCE.init(isShowSql, isFormatSql, isShowParams, level); SqlLog.INSTANCE.init(isShowSql, isFormatSql, isShowParams, level);

View File

@ -50,16 +50,26 @@ public class SqlLog {
/** /**
* 设置全局配置是否通过debug日志显示SQL * 设置全局配置是否通过debug日志显示SQL
* *
* @param isShowSql 是否显示SQL * @param isShowSql 是否显示SQL{@code null}表示保持默认
* @param isFormatSql 是否格式化显示的SQL * @param isFormatSql 是否格式化显示的SQL{@code null}表示保持默认
* @param isShowParams 是否打印参数 * @param isShowParams 是否打印参数{@code null}表示保持默认
* @param level 日志级别 * @param level 日志级别{@code null}表示保持默认
*/ */
public void init(final boolean isShowSql, final boolean isFormatSql, final boolean isShowParams, final Level level) { public void init(final Boolean isShowSql, final Boolean isFormatSql, final Boolean isShowParams, final Level level) {
this.showSql = isShowSql; if (null != isShowSql) {
this.formatSql = isFormatSql; this.showSql = isShowSql;
this.showParams = isShowParams; }
this.level = level; if (null != isFormatSql) {
this.formatSql = isFormatSql;
}
if (null != isShowParams) {
this.showParams = isShowParams;
}
if (null != level) {
this.level = level;
}
log.debug("Show sql: [{}], format sql: [{}], show params: [{}], level: [{}]",
this.showSql, this.formatSql, this.showParams, this.level);
} }
/** /**