diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/text/CharSequenceUtil.java b/hutool-core/src/main/java/org/dromara/hutool/core/text/CharSequenceUtil.java
index 0a564bc25..7815bafac 100644
--- a/hutool-core/src/main/java/org/dromara/hutool/core/text/CharSequenceUtil.java
+++ b/hutool-core/src/main/java/org/dromara/hutool/core/text/CharSequenceUtil.java
@@ -62,7 +62,7 @@ import java.util.function.Supplier;
*
去除两边的指定所有字符:trim
* 去除两边的指定所有字符包装和去除包装:wrap
*
- *
+ *
* 需要注意的是,strip、trim、wrap(unWrap)的策略不同:
*
* - strip: 强调去除两边或某一边的指定字符串,这个字符串不会重复去除,如果一边不存在,另一边不影响去除
@@ -1538,12 +1538,22 @@ public class CharSequenceUtil extends StrValidator {
/**
* 截取字符串,从指定位置开始,截取指定长度的字符串
- * author weibaohui
+ * 当fromIndex为正数时,这个index指的是插空位置,如下:
+ *
+ * 0 1 2 3 4
+ * A B C D
+ *
+ * 当fromIndex为负数时,为反向插空位置,其中-1表示最后一个字符之前的位置:
+ *
+ * -3 -2 -1 length
+ * A B C D
+ *
*
* @param input 原始字符串
- * @param fromIndex 开始的index,包括
+ * @param fromIndex 开始的index,包括,可以为负数
* @param length 要截取的长度
* @return 截取后的字符串
+ * author weibaohui
*/
public static String subByLength(final String input, final int fromIndex, final int length) {
if (isEmpty(input)) {
diff --git a/hutool-core/src/test/java/org/dromara/hutool/core/text/IssueI73AB9Test.java b/hutool-core/src/test/java/org/dromara/hutool/core/text/IssueI73AB9Test.java
new file mode 100755
index 000000000..5a64a7a9c
--- /dev/null
+++ b/hutool-core/src/test/java/org/dromara/hutool/core/text/IssueI73AB9Test.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2023 looly(loolly@aliyun.com)
+ * Hutool is licensed under Mulan PSL v2.
+ * You can use this software according to the terms and conditions of the Mulan PSL v2.
+ * You may obtain a copy of Mulan PSL v2 at:
+ * http://license.coscl.org.cn/MulanPSL2
+ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
+ * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
+ * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
+ * See the Mulan PSL v2 for more details.
+ */
+
+package org.dromara.hutool.core.text;
+
+import org.dromara.hutool.core.lang.Console;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
+public class IssueI73AB9Test {
+
+ /**
+ * https://gitee.com/dromara/hutool/issues/I73AB9
+ */
+ @Test
+ void subWithLengthTest() {
+ final String str = "7814A103447E";
+ String s = StrUtil.subByLength(str, -4, 2);
+ Assertions.assertEquals("03", s);
+ s = StrUtil.subByLength(str, -2, 2);
+ Assertions.assertEquals("44", s);
+ }
+}
diff --git a/hutool-cron/src/main/java/org/dromara/hutool/cron/Scheduler.java b/hutool-cron/src/main/java/org/dromara/hutool/cron/Scheduler.java
index 270b64fec..e27feda8d 100644
--- a/hutool-cron/src/main/java/org/dromara/hutool/cron/Scheduler.java
+++ b/hutool-cron/src/main/java/org/dromara/hutool/cron/Scheduler.java
@@ -24,7 +24,7 @@ import org.dromara.hutool.cron.pattern.CronPattern;
import org.dromara.hutool.cron.task.InvokeTask;
import org.dromara.hutool.cron.task.RunnableTask;
import org.dromara.hutool.cron.task.Task;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import org.dromara.hutool.setting.Setting;
import java.io.Serializable;
@@ -221,7 +221,7 @@ public class Scheduler implements Serializable {
jobClass = group + CharUtil.DOT + jobClass;
}
final String pattern = entry.getValue();
- StaticLog.debug("Load job: {} {}", pattern, jobClass);
+ LogUtil.debug("Load job: {} {}", pattern, jobClass);
try {
// issue#I5E7BM@Gitee,自定义ID避免重复从配置文件加载
schedule("id_" + jobClass, pattern, new InvokeTask(jobClass));
diff --git a/hutool-cron/src/main/java/org/dromara/hutool/cron/listener/TaskListenerManager.java b/hutool-cron/src/main/java/org/dromara/hutool/cron/listener/TaskListenerManager.java
index 210bcab23..0f9b45f5f 100644
--- a/hutool-cron/src/main/java/org/dromara/hutool/cron/listener/TaskListenerManager.java
+++ b/hutool-cron/src/main/java/org/dromara/hutool/cron/listener/TaskListenerManager.java
@@ -13,7 +13,7 @@
package org.dromara.hutool.cron.listener;
import org.dromara.hutool.cron.TaskExecutor;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import java.io.Serializable;
import java.util.ArrayList;
@@ -95,7 +95,7 @@ public class TaskListenerManager implements Serializable {
listener.onFailed(executor, exception);
}
}else{
- StaticLog.error(exception, exception.getMessage());
+ LogUtil.error(exception, exception.getMessage());
}
}
}
diff --git a/hutool-cron/src/main/java/org/dromara/hutool/cron/timingwheel/TimingWheel.java b/hutool-cron/src/main/java/org/dromara/hutool/cron/timingwheel/TimingWheel.java
index 8dc6e7d0a..8bc63bb8d 100644
--- a/hutool-cron/src/main/java/org/dromara/hutool/cron/timingwheel/TimingWheel.java
+++ b/hutool-cron/src/main/java/org/dromara/hutool/cron/timingwheel/TimingWheel.java
@@ -12,7 +12,7 @@
package org.dromara.hutool.cron.timingwheel;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import java.util.function.Consumer;
@@ -108,7 +108,7 @@ public class TimingWheel {
//当前时间轮可以容纳该任务 加入时间槽
final long virtualId = expiration / tickMs;
final int index = (int) (virtualId % wheelSize);
- StaticLog.debug("tickMs: {} ------index: {} ------expiration: {}", tickMs, index, expiration);
+ LogUtil.debug("tickMs: {} ------index: {} ------expiration: {}", tickMs, index, expiration);
final TimerTaskList timerTaskList = timerTaskLists[index];
timerTaskList.addTask(timerTask);
diff --git a/hutool-db/src/main/java/org/dromara/hutool/db/Db.java b/hutool-db/src/main/java/org/dromara/hutool/db/Db.java
index e5b7faacb..fba5b90c6 100644
--- a/hutool-db/src/main/java/org/dromara/hutool/db/Db.java
+++ b/hutool-db/src/main/java/org/dromara/hutool/db/Db.java
@@ -17,7 +17,7 @@ import org.dromara.hutool.db.dialect.Dialect;
import org.dromara.hutool.db.dialect.DialectFactory;
import org.dromara.hutool.db.ds.DSUtil;
import org.dromara.hutool.db.transaction.TransactionLevel;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import javax.sql.DataSource;
import java.sql.Connection;
@@ -190,7 +190,7 @@ public class Db extends AbstractDb {
try {
conn.rollback();
} catch (final Exception e) {
- StaticLog.error(e);
+ LogUtil.error(e);
}
}
}
@@ -206,7 +206,7 @@ public class Db extends AbstractDb {
try {
conn.setAutoCommit(autoCommit);
} catch (final Exception e) {
- StaticLog.error(e);
+ LogUtil.error(e);
}
}
}
diff --git a/hutool-db/src/main/java/org/dromara/hutool/db/dialect/DialectFactory.java b/hutool-db/src/main/java/org/dromara/hutool/db/dialect/DialectFactory.java
index 6590c4430..dd4117475 100644
--- a/hutool-db/src/main/java/org/dromara/hutool/db/dialect/DialectFactory.java
+++ b/hutool-db/src/main/java/org/dromara/hutool/db/dialect/DialectFactory.java
@@ -24,7 +24,7 @@ import org.dromara.hutool.db.dialect.impl.PhoenixDialect;
import org.dromara.hutool.db.dialect.impl.PostgresqlDialect;
import org.dromara.hutool.db.dialect.impl.SqlServer2012Dialect;
import org.dromara.hutool.db.dialect.impl.Sqlite3Dialect;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import javax.sql.DataSource;
import java.sql.Connection;
@@ -51,7 +51,7 @@ public class DialectFactory implements DriverNamePool {
*/
public static Dialect newDialect(final String driverName) {
final Dialect dialect = internalNewDialect(driverName);
- StaticLog.debug("Use Dialect: [{}].", dialect.getClass().getSimpleName());
+ LogUtil.debug("Use Dialect: [{}].", dialect.getClass().getSimpleName());
return dialect;
}
diff --git a/hutool-db/src/main/java/org/dromara/hutool/db/ds/DSUtil.java b/hutool-db/src/main/java/org/dromara/hutool/db/ds/DSUtil.java
index 35ec764ee..8096d8bb7 100644
--- a/hutool-db/src/main/java/org/dromara/hutool/db/ds/DSUtil.java
+++ b/hutool-db/src/main/java/org/dromara/hutool/db/ds/DSUtil.java
@@ -16,7 +16,7 @@ import org.dromara.hutool.core.reflect.ConstructorUtil;
import org.dromara.hutool.core.spi.ListServiceLoader;
import org.dromara.hutool.db.DbRuntimeException;
import org.dromara.hutool.db.GlobalDbConfig;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import org.dromara.hutool.setting.Setting;
import javax.naming.InitialContext;
@@ -42,7 +42,7 @@ public class DSUtil {
try {
return getJndiDS(jndiName);
} catch (final DbRuntimeException e) {
- StaticLog.error(e.getCause(), "Find JNDI datasource error!");
+ LogUtil.error(e.getCause(), "Find JNDI datasource error!");
}
return null;
}
@@ -108,7 +108,7 @@ public class DSUtil {
*/
public static DSFactory createFactory(final Setting setting) {
final DSFactory dsFactory = _createFactory(setting);
- StaticLog.debug("Use [{}] DataSource As Default.", dsFactory.getDataSourceName());
+ LogUtil.debug("Use [{}] DataSource As Default.", dsFactory.getDataSourceName());
return dsFactory;
}
diff --git a/hutool-db/src/main/java/org/dromara/hutool/db/ds/GlobalDSFactory.java b/hutool-db/src/main/java/org/dromara/hutool/db/ds/GlobalDSFactory.java
index 24457316b..e1b0a95f2 100644
--- a/hutool-db/src/main/java/org/dromara/hutool/db/ds/GlobalDSFactory.java
+++ b/hutool-db/src/main/java/org/dromara/hutool/db/ds/GlobalDSFactory.java
@@ -14,7 +14,7 @@ package org.dromara.hutool.db.ds;
import org.dromara.hutool.core.io.IoUtil;
import org.dromara.hutool.core.util.RuntimeUtil;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
/**
* 全局单例数据源工厂
@@ -36,7 +36,7 @@ public class GlobalDSFactory {
RuntimeUtil.addShutdownHook(()->{
if (null != factory) {
IoUtil.closeQuietly(factory);
- StaticLog.debug("DataSource: [{}] closed.", factory.getDataSourceName());
+ LogUtil.debug("DataSource: [{}] closed.", factory.getDataSourceName());
factory = null;
}
});
@@ -83,7 +83,7 @@ public class GlobalDSFactory {
IoUtil.closeQuietly(factory);
}
- StaticLog.debug("Custom use [{}] DataSource.", customDSFactory.getDataSourceName());
+ LogUtil.debug("Custom use [{}] DataSource.", customDSFactory.getDataSourceName());
factory = customDSFactory;
}
return factory;
diff --git a/hutool-db/src/test/java/org/dromara/hutool/db/DbTest.java b/hutool-db/src/test/java/org/dromara/hutool/db/DbTest.java
index 2341aa545..60ceb43af 100644
--- a/hutool-db/src/test/java/org/dromara/hutool/db/DbTest.java
+++ b/hutool-db/src/test/java/org/dromara/hutool/db/DbTest.java
@@ -2,7 +2,7 @@ package org.dromara.hutool.db;
import org.dromara.hutool.db.handler.EntityListHandler;
import org.dromara.hutool.db.sql.Condition;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
@@ -119,7 +119,7 @@ public class DbTest {
Condition.parse("age", "< 100")
);
for (final Entity entity : find) {
- StaticLog.debug("{}", entity);
+ LogUtil.debug("{}", entity);
}
Assertions.assertEquals("unitTestUser", find.get(0).get("name"));
}
diff --git a/hutool-extra/src/main/java/org/dromara/hutool/extra/pinyin/engine/PinyinEngineFactory.java b/hutool-extra/src/main/java/org/dromara/hutool/extra/pinyin/engine/PinyinEngineFactory.java
index 3e1cebd56..e64d7ebb5 100644
--- a/hutool-extra/src/main/java/org/dromara/hutool/extra/pinyin/engine/PinyinEngineFactory.java
+++ b/hutool-extra/src/main/java/org/dromara/hutool/extra/pinyin/engine/PinyinEngineFactory.java
@@ -16,7 +16,7 @@ import org.dromara.hutool.core.lang.Singleton;
import org.dromara.hutool.core.spi.SpiUtil;
import org.dromara.hutool.core.text.StrUtil;
import org.dromara.hutool.extra.pinyin.PinyinException;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
/**
* 简单拼音引擎工厂,用于根据用户引入的拼音库jar,自动创建对应的拼音引擎对象
@@ -43,7 +43,7 @@ public class PinyinEngineFactory {
*/
public static PinyinEngine createEngine() {
final PinyinEngine engine = doCreateEngine();
- StaticLog.debug("Use [{}] Engine As Default.", StrUtil.removeSuffix(engine.getClass().getSimpleName(), "Engine"));
+ LogUtil.debug("Use [{}] Engine As Default.", StrUtil.removeSuffix(engine.getClass().getSimpleName(), "Engine"));
return engine;
}
diff --git a/hutool-extra/src/main/java/org/dromara/hutool/extra/template/engine/TemplateEngineFactory.java b/hutool-extra/src/main/java/org/dromara/hutool/extra/template/engine/TemplateEngineFactory.java
index 2e5462d0d..879e497b8 100644
--- a/hutool-extra/src/main/java/org/dromara/hutool/extra/template/engine/TemplateEngineFactory.java
+++ b/hutool-extra/src/main/java/org/dromara/hutool/extra/template/engine/TemplateEngineFactory.java
@@ -18,7 +18,7 @@ import org.dromara.hutool.core.spi.SpiUtil;
import org.dromara.hutool.core.text.StrUtil;
import org.dromara.hutool.extra.template.TemplateConfig;
import org.dromara.hutool.extra.template.TemplateException;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
/**
* 简单模板引擎工厂,用于根据用户引入的模板引擎jar,自动创建对应的模板引擎对象
@@ -58,7 +58,7 @@ public class TemplateEngineFactory {
*/
public static TemplateEngine createEngine(final TemplateConfig config) {
final TemplateEngine engine = doCreateEngine(config);
- StaticLog.debug("Use [{}] Engine As Default.", StrUtil.removeSuffix(engine.getClass().getSimpleName(), "Engine"));
+ LogUtil.debug("Use [{}] Engine As Default.", StrUtil.removeSuffix(engine.getClass().getSimpleName(), "Engine"));
return engine;
}
diff --git a/hutool-extra/src/main/java/org/dromara/hutool/extra/tokenizer/engine/TokenizerEngineFactory.java b/hutool-extra/src/main/java/org/dromara/hutool/extra/tokenizer/engine/TokenizerEngineFactory.java
index a4582a862..871a9a382 100644
--- a/hutool-extra/src/main/java/org/dromara/hutool/extra/tokenizer/engine/TokenizerEngineFactory.java
+++ b/hutool-extra/src/main/java/org/dromara/hutool/extra/tokenizer/engine/TokenizerEngineFactory.java
@@ -16,7 +16,7 @@ import org.dromara.hutool.core.lang.Singleton;
import org.dromara.hutool.core.spi.SpiUtil;
import org.dromara.hutool.core.text.StrUtil;
import org.dromara.hutool.extra.tokenizer.TokenizerException;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
/**
* 简单分词引擎工厂,用于根据用户引入的分词引擎jar,自动创建对应的引擎
@@ -42,7 +42,7 @@ public class TokenizerEngineFactory {
*/
public static TokenizerEngine createEngine() {
final TokenizerEngine engine = doCreateEngine();
- StaticLog.debug("Use [{}] Tokenizer Engine As Default.", StrUtil.removeSuffix(engine.getClass().getSimpleName(), "Engine"));
+ LogUtil.debug("Use [{}] Tokenizer Engine As Default.", StrUtil.removeSuffix(engine.getClass().getSimpleName(), "Engine"));
return engine;
}
diff --git a/hutool-http/src/main/java/org/dromara/hutool/http/client/engine/ClientEngineFactory.java b/hutool-http/src/main/java/org/dromara/hutool/http/client/engine/ClientEngineFactory.java
index aa7ede4b1..7ea033b91 100644
--- a/hutool-http/src/main/java/org/dromara/hutool/http/client/engine/ClientEngineFactory.java
+++ b/hutool-http/src/main/java/org/dromara/hutool/http/client/engine/ClientEngineFactory.java
@@ -17,7 +17,7 @@ import org.dromara.hutool.core.spi.SpiUtil;
import org.dromara.hutool.core.text.StrUtil;
import org.dromara.hutool.http.HttpException;
import org.dromara.hutool.http.client.ClientConfig;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
/**
* Http客户端引擎工厂类
@@ -56,7 +56,7 @@ public class ClientEngineFactory {
*/
public static ClientEngine createEngine() {
final ClientEngine engine = doCreateEngine();
- StaticLog.debug("Use [{}] Http Engine As Default.", StrUtil.removeSuffix(engine.getClass().getSimpleName(), "Engine"));
+ LogUtil.debug("Use [{}] Http Engine As Default.", StrUtil.removeSuffix(engine.getClass().getSimpleName(), "Engine"));
return engine;
}
diff --git a/hutool-log/src/main/java/org/dromara/hutool/log/StaticLog.java b/hutool-log/src/main/java/org/dromara/hutool/log/LogUtil.java
similarity index 98%
rename from hutool-log/src/main/java/org/dromara/hutool/log/StaticLog.java
rename to hutool-log/src/main/java/org/dromara/hutool/log/LogUtil.java
index 2cdef6e4c..2223197a0 100644
--- a/hutool-log/src/main/java/org/dromara/hutool/log/StaticLog.java
+++ b/hutool-log/src/main/java/org/dromara/hutool/log/LogUtil.java
@@ -21,8 +21,8 @@ import org.dromara.hutool.log.level.Level;
*
* @author Looly
*/
-public class StaticLog {
- private static final String FQCN = StaticLog.class.getName();
+public class LogUtil {
+ private static final String FQCN = LogUtil.class.getName();
// ----------------------------------------------------------- Log method start
// ------------------------ Trace
diff --git a/hutool-log/src/test/java/org/dromara/hutool/log/StaticLogTest.java b/hutool-log/src/test/java/org/dromara/hutool/log/LogUtilTest.java
similarity index 55%
rename from hutool-log/src/test/java/org/dromara/hutool/log/StaticLogTest.java
rename to hutool-log/src/test/java/org/dromara/hutool/log/LogUtilTest.java
index 7b9be1890..a61dc3b83 100644
--- a/hutool-log/src/test/java/org/dromara/hutool/log/StaticLogTest.java
+++ b/hutool-log/src/test/java/org/dromara/hutool/log/LogUtilTest.java
@@ -6,29 +6,29 @@ import org.dromara.hutool.log.engine.console.ConsoleLogEngine;
import org.dromara.hutool.log.engine.log4j2.Log4j2LogEngine;
import org.junit.jupiter.api.Test;
-public class StaticLogTest {
+public class LogUtilTest {
@Test
public void staticLog4j2Test() {
LogEngineFactory.setDefaultEngine(Log4j2LogEngine.class);
- StaticLog.debug("This is static {} log", "debug");
- StaticLog.info("This is static {} log", "info");
+ LogUtil.debug("This is static {} log", "debug");
+ LogUtil.info("This is static {} log", "info");
}
@Test
public void test() {
LogEngineFactory.setDefaultEngine(ConsoleLogEngine.class);
- StaticLog.debug("This is static {} log", "debug");
- StaticLog.info("This is static {} log", "info");
+ LogUtil.debug("This is static {} log", "debug");
+ LogUtil.info("This is static {} log", "info");
}
@Test
public void colorTest(){
LogEngineFactory.setDefaultEngine(ConsoleColorLogEngine.class);
- StaticLog.debug("This is static {} log", "debug");
- StaticLog.info("This is static {} log", "info");
- StaticLog.error("This is static {} log", "error");
- StaticLog.warn("This is static {} log", "warn");
- StaticLog.trace("This is static {} log", "trace");
+ LogUtil.debug("This is static {} log", "debug");
+ LogUtil.info("This is static {} log", "info");
+ LogUtil.error("This is static {} log", "error");
+ LogUtil.warn("This is static {} log", "warn");
+ LogUtil.trace("This is static {} log", "trace");
}
}
diff --git a/hutool-setting/src/main/java/org/dromara/hutool/setting/Setting.java b/hutool-setting/src/main/java/org/dromara/hutool/setting/Setting.java
index f379ef790..e49136e32 100644
--- a/hutool-setting/src/main/java/org/dromara/hutool/setting/Setting.java
+++ b/hutool-setting/src/main/java/org/dromara/hutool/setting/Setting.java
@@ -27,7 +27,7 @@ import org.dromara.hutool.core.func.SerSupplier;
import org.dromara.hutool.core.text.StrUtil;
import org.dromara.hutool.core.text.CharUtil;
import org.dromara.hutool.core.util.CharsetUtil;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import org.dromara.hutool.setting.props.Props;
import java.io.File;
@@ -232,7 +232,7 @@ public class Setting extends AbsSetting implements Map {
}
});
this.watchMonitor.start();
- StaticLog.debug("Auto load for [{}] listenning...", this.resource.getUrl());
+ LogUtil.debug("Auto load for [{}] listenning...", this.resource.getUrl());
} else {
IoUtil.closeQuietly(this.watchMonitor);
this.watchMonitor = null;
@@ -273,7 +273,7 @@ public class Setting extends AbsSetting implements Map {
public Object getObjByGroup(final CharSequence key, final CharSequence group, final Object defaultValue) {
final String result = this.groupedMap.get(group, key);
if (result == null && logIfNull) {
- StaticLog.debug("No key [{}] in group [{}] !", key, group);
+ LogUtil.debug("No key [{}] in group [{}] !", key, group);
}
return result;
}
diff --git a/hutool-setting/src/main/java/org/dromara/hutool/setting/props/Props.java b/hutool-setting/src/main/java/org/dromara/hutool/setting/props/Props.java
index ded42cc4f..bb77a1eb7 100644
--- a/hutool-setting/src/main/java/org/dromara/hutool/setting/props/Props.java
+++ b/hutool-setting/src/main/java/org/dromara/hutool/setting/props/Props.java
@@ -33,7 +33,7 @@ import org.dromara.hutool.core.reflect.ConstructorUtil;
import org.dromara.hutool.core.text.StrUtil;
import org.dromara.hutool.core.util.CharsetUtil;
import org.dromara.hutool.core.util.ObjUtil;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import java.io.File;
import java.io.IOException;
@@ -360,7 +360,7 @@ public final class Props extends Properties implements TypeGetter
BeanUtil.setProperty(bean, StrUtil.subSuf(key, prefix.length()), entry.getValue());
} catch (final Exception e) {
// 忽略注入失败的字段(这些字段可能用于其它配置)
- StaticLog.debug("Ignore property: [{}],because of: {}", key, e);
+ LogUtil.debug("Ignore property: [{}],because of: {}", key, e);
}
}
diff --git a/hutool-socket/src/main/java/org/dromara/hutool/socket/aio/AcceptHandler.java b/hutool-socket/src/main/java/org/dromara/hutool/socket/aio/AcceptHandler.java
index 70ceeb635..378cb678c 100644
--- a/hutool-socket/src/main/java/org/dromara/hutool/socket/aio/AcceptHandler.java
+++ b/hutool-socket/src/main/java/org/dromara/hutool/socket/aio/AcceptHandler.java
@@ -16,7 +16,7 @@ import java.nio.ByteBuffer;
import java.nio.channels.AsynchronousSocketChannel;
import java.nio.channels.CompletionHandler;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
/**
* 接入完成回调,单例使用
@@ -43,7 +43,7 @@ public class AcceptHandler implements CompletionHandler
@@ -31,6 +31,6 @@ public abstract class SimpleIoAction implements IoAction {
@Override
public void failed(final Throwable exc, final AioSession session) {
- StaticLog.error(exc);
+ LogUtil.error(exc);
}
}
diff --git a/hutool-socket/src/main/java/org/dromara/hutool/socket/nio/AcceptHandler.java b/hutool-socket/src/main/java/org/dromara/hutool/socket/nio/AcceptHandler.java
index 74fc366fe..36cfeb5f6 100644
--- a/hutool-socket/src/main/java/org/dromara/hutool/socket/nio/AcceptHandler.java
+++ b/hutool-socket/src/main/java/org/dromara/hutool/socket/nio/AcceptHandler.java
@@ -13,7 +13,7 @@
package org.dromara.hutool.socket.nio;
import org.dromara.hutool.core.io.IORuntimeException;
-import org.dromara.hutool.log.StaticLog;
+import org.dromara.hutool.log.LogUtil;
import java.io.IOException;
import java.nio.channels.CompletionHandler;
@@ -33,7 +33,7 @@ public class AcceptHandler implements CompletionHandler