From 7167f29276e96a76262f6b3709896eac86fce2fe Mon Sep 17 00:00:00 2001 From: 18331247943 <52498112+18331247943@users.noreply.github.com> Date: Tue, 16 Nov 2021 12:19:44 +0800 Subject: [PATCH] Update StringUtils.java (#696) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 资源泄漏 --- .../src/main/java/me/zhengjie/utils/StringUtils.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/eladmin-common/src/main/java/me/zhengjie/utils/StringUtils.java b/eladmin-common/src/main/java/me/zhengjie/utils/StringUtils.java index dfaf40e6..9c8f6036 100644 --- a/eladmin-common/src/main/java/me/zhengjie/utils/StringUtils.java +++ b/eladmin-common/src/main/java/me/zhengjie/utils/StringUtils.java @@ -217,14 +217,17 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { */ public static String getLocalCityInfo(String ip) { try { - DataBlock dataBlock = new DbSearcher(config, file.getPath()) - .binarySearch(ip); + DbSearcher dbSearcher = new DbSearcher(config, file.getPath()); + DataBlock dataBlock = dbSearcher.binarySearch(ip); String region = dataBlock.getRegion(); String address = region.replace("0|", ""); char symbol = '|'; if (address.charAt(address.length() - 1) == symbol) { address = address.substring(0, address.length() - 1); } + if (dataBlock!=null){ + dbSearcher.close(); + } return address.equals(ElAdminConstant.REGION) ? "内网IP" : address; } catch (Exception e) { log.error(e.getMessage(), e);