diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/audit/DefaultMessageFactory.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/audit/DefaultMessageFactory.java index 2f928494..bb84c3ec 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/audit/DefaultMessageFactory.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/audit/DefaultMessageFactory.java @@ -23,14 +23,24 @@ import com.mybatisflex.core.audit.http.HttpUtil; */ public class DefaultMessageFactory implements MessageFactory { - private final String hostIp = HttpUtil.getHostIp(); + private String hostIp; @Override public AuditMessage create() { AuditMessage message = new AuditMessage(); message.setPlatform(FlexConsts.NAME); - message.setHostIp(hostIp); + message.setHostIp(getHostIp()); return message; } + public String getHostIp() { + if (hostIp == null) { + hostIp = HttpUtil.getHostIp(); + } + return hostIp; + } + + public void setHostIp(String hostIp) { + this.hostIp = hostIp; + } } diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/audit/http/HttpUtil.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/audit/http/HttpUtil.java index e174605b..a3761de8 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/audit/http/HttpUtil.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/audit/http/HttpUtil.java @@ -58,8 +58,8 @@ public class HttpUtil { if (networkInterface.isLoopback() || networkInterface.isVirtual() || !networkInterface.isUp()) { continue; } - for (Enumeration addrs = networkInterface.getInetAddresses(); addrs.hasMoreElements(); ) { - InetAddress addr = addrs.nextElement(); + for (Enumeration addresses = networkInterface.getInetAddresses(); addresses.hasMoreElements(); ) { + InetAddress addr = addresses.nextElement(); if (addr instanceof Inet4Address) { return addr.getHostAddress(); }