From 2905d0f0403abdba493520d0c40f310f812b0235 Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Fri, 13 Jun 2025 11:18:17 +0800 Subject: [PATCH 1/2] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20=E4=BC=98=E5=8C=96Te?= =?UTF-8?q?nantContext=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1441180573728768]优化TenantContext类 http://192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/939050947543042/1441180573728768 --- .../threadlocal/TenantContext.java | 35 +++++++++++-------- .../framework/dao/cache/NeatLogicCache.java | 2 +- .../cache/NeatLogicConcurrentSafeCache.java | 4 +-- .../logback/converter/TenantConverter.java | 2 +- 4 files changed, 25 insertions(+), 18 deletions(-) diff --git a/src/main/java/neatlogic/framework/asynchronization/threadlocal/TenantContext.java b/src/main/java/neatlogic/framework/asynchronization/threadlocal/TenantContext.java index dd15708bf..681508f92 100644 --- a/src/main/java/neatlogic/framework/asynchronization/threadlocal/TenantContext.java +++ b/src/main/java/neatlogic/framework/asynchronization/threadlocal/TenantContext.java @@ -162,31 +162,38 @@ public class TenantContext implements Serializable { } public List getActiveModuleList() { - List tenantModuleGroupList = searchModuleGroupList(this.tenantUuid); - return ModuleUtil.getTenantActiveModuleList(tenantModuleGroupList); + if (StringUtils.isNotBlank(this.tenantUuid)) { + List tenantModuleGroupList = searchModuleGroupList(this.tenantUuid); + return ModuleUtil.getTenantActiveModuleList(tenantModuleGroupList); + } + return new ArrayList<>(); } public List getActiveModuleGroupList() { - List tenantModuleGroupList = searchModuleGroupList(this.tenantUuid); - //补充framework模块 - ModuleUtil.getTenantActiveModuleList(tenantModuleGroupList); List activeModuleGroupList = new ArrayList<>(); - for (String group : tenantModuleGroupList) { - ModuleGroupVo groupVo = ModuleUtil.getModuleGroup(group); - if (groupVo != null) { - activeModuleGroupList.add(groupVo); + if (StringUtils.isNotBlank(this.tenantUuid)) { + List tenantModuleGroupList = searchModuleGroupList(this.tenantUuid); + //补充framework模块 + ModuleUtil.getTenantActiveModuleList(tenantModuleGroupList); + for (String group : tenantModuleGroupList) { + ModuleGroupVo groupVo = ModuleUtil.getModuleGroup(group); + if (groupVo != null) { + activeModuleGroupList.add(groupVo); + } } } return activeModuleGroupList; } public Map getActiveModuleMap() { - List tenantModuleGroupList = searchModuleGroupList(this.tenantUuid); - List activeModuleList = ModuleUtil.getTenantActiveModuleList(tenantModuleGroupList); Map activeModuleMap = new HashMap<>(); - if (CollectionUtils.isNotEmpty(activeModuleList)) { - for (ModuleVo module : activeModuleList) { - activeModuleMap.put(module.getId(), module); + if (StringUtils.isNotBlank(this.tenantUuid)) { + List tenantModuleGroupList = searchModuleGroupList(this.tenantUuid); + List activeModuleList = ModuleUtil.getTenantActiveModuleList(tenantModuleGroupList); + if (CollectionUtils.isNotEmpty(activeModuleList)) { + for (ModuleVo module : activeModuleList) { + activeModuleMap.put(module.getId(), module); + } } } return activeModuleMap; diff --git a/src/main/java/neatlogic/framework/dao/cache/NeatLogicCache.java b/src/main/java/neatlogic/framework/dao/cache/NeatLogicCache.java index 49ea1800b..7ce9cf322 100644 --- a/src/main/java/neatlogic/framework/dao/cache/NeatLogicCache.java +++ b/src/main/java/neatlogic/framework/dao/cache/NeatLogicCache.java @@ -47,7 +47,7 @@ public class NeatLogicCache implements Cache { private synchronized Ehcache getCache() { TenantContext tenantContext = TenantContext.get(); String tenant = null; - if (tenantContext != null) { + if (tenantContext != null && StringUtils.isNotBlank(tenantContext.getTenantUuid())) { tenant = tenantContext.getTenantUuid(); } if (StringUtils.isNotBlank(tenant)) { diff --git a/src/main/java/neatlogic/framework/dao/cache/NeatLogicConcurrentSafeCache.java b/src/main/java/neatlogic/framework/dao/cache/NeatLogicConcurrentSafeCache.java index eed2e0569..07dc49ceb 100644 --- a/src/main/java/neatlogic/framework/dao/cache/NeatLogicConcurrentSafeCache.java +++ b/src/main/java/neatlogic/framework/dao/cache/NeatLogicConcurrentSafeCache.java @@ -48,7 +48,7 @@ public class NeatLogicConcurrentSafeCache implements Cache { private static String generateLockKey(String id, Object key) { String tenant = null; TenantContext tenantContext = TenantContext.get(); - if (tenantContext != null) { + if (tenantContext != null && StringUtils.isNotBlank(tenantContext.getTenantUuid())) { tenant = tenantContext.getTenantUuid(); } if (StringUtils.isNotBlank(tenant)) { @@ -73,7 +73,7 @@ public class NeatLogicConcurrentSafeCache implements Cache { private synchronized Ehcache getCache() { TenantContext tenantContext = TenantContext.get(); String tenant = null; - if (tenantContext != null) { + if (tenantContext != null && StringUtils.isNotBlank(tenantContext.getTenantUuid())) { tenant = tenantContext.getTenantUuid(); } if (StringUtils.isNotBlank(tenant)) { diff --git a/src/main/java/neatlogic/framework/logback/converter/TenantConverter.java b/src/main/java/neatlogic/framework/logback/converter/TenantConverter.java index ffbac52ef..0b94ddd4c 100644 --- a/src/main/java/neatlogic/framework/logback/converter/TenantConverter.java +++ b/src/main/java/neatlogic/framework/logback/converter/TenantConverter.java @@ -39,7 +39,7 @@ public class TenantConverter extends ClassicConverter implements Serializable { @Override public String convert(ILoggingEvent event) { TenantContext tenantContext = TenantContext.get(); - if (tenantContext != null) { + if (tenantContext != null && StringUtils.isNotBlank(tenantContext.getTenantUuid())) { return tenantContext.getTenantUuid(); } else { Map map = event.getMDCPropertyMap(); -- Gitee From 3df13f1a4f80fd71b3d7cd7723d1100e1fef1c91 Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Fri, 13 Jun 2025 11:22:59 +0800 Subject: [PATCH 2/2] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20=E4=BC=98=E5=8C=96Te?= =?UTF-8?q?nantContext=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1441180573728768]优化TenantContext类 http://192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/939050947543042/1441180573728768 --- .../framework/dao/cache/NeatLogicCache.java | 6 +----- .../dao/cache/NeatLogicConcurrentSafeCache.java | 12 ++---------- .../framework/logback/converter/TenantConverter.java | 5 ++--- 3 files changed, 5 insertions(+), 18 deletions(-) diff --git a/src/main/java/neatlogic/framework/dao/cache/NeatLogicCache.java b/src/main/java/neatlogic/framework/dao/cache/NeatLogicCache.java index 7ce9cf322..92af9465b 100644 --- a/src/main/java/neatlogic/framework/dao/cache/NeatLogicCache.java +++ b/src/main/java/neatlogic/framework/dao/cache/NeatLogicCache.java @@ -45,11 +45,7 @@ public class NeatLogicCache implements Cache { } private synchronized Ehcache getCache() { - TenantContext tenantContext = TenantContext.get(); - String tenant = null; - if (tenantContext != null && StringUtils.isNotBlank(tenantContext.getTenantUuid())) { - tenant = tenantContext.getTenantUuid(); - } + String tenant = TenantContext.get().getTenantUuid(); if (StringUtils.isNotBlank(tenant)) { if (!CACHE_MANAGER.cacheExists(tenant + ":" + id)) { CACHE_MANAGER.addCache(tenant + ":" + id); diff --git a/src/main/java/neatlogic/framework/dao/cache/NeatLogicConcurrentSafeCache.java b/src/main/java/neatlogic/framework/dao/cache/NeatLogicConcurrentSafeCache.java index 07dc49ceb..b9f1ce853 100644 --- a/src/main/java/neatlogic/framework/dao/cache/NeatLogicConcurrentSafeCache.java +++ b/src/main/java/neatlogic/framework/dao/cache/NeatLogicConcurrentSafeCache.java @@ -46,11 +46,7 @@ public class NeatLogicConcurrentSafeCache implements Cache { private static final ConcurrentHashMap LOCAL_LOCK_MAP = new ConcurrentHashMap<>(); private static String generateLockKey(String id, Object key) { - String tenant = null; - TenantContext tenantContext = TenantContext.get(); - if (tenantContext != null && StringUtils.isNotBlank(tenantContext.getTenantUuid())) { - tenant = tenantContext.getTenantUuid(); - } + String tenant = TenantContext.get().getTenantUuid(); if (StringUtils.isNotBlank(tenant)) { return tenant + ":" + id + ":" + key; } else { @@ -71,11 +67,7 @@ public class NeatLogicConcurrentSafeCache implements Cache { } private synchronized Ehcache getCache() { - TenantContext tenantContext = TenantContext.get(); - String tenant = null; - if (tenantContext != null && StringUtils.isNotBlank(tenantContext.getTenantUuid())) { - tenant = tenantContext.getTenantUuid(); - } + String tenant = TenantContext.get().getTenantUuid(); if (StringUtils.isNotBlank(tenant)) { if (!CACHE_MANAGER.cacheExists(tenant + ":" + id)) { Ehcache ehcache = CACHE_MANAGER.addCacheIfAbsent(tenant + ":" + id); diff --git a/src/main/java/neatlogic/framework/logback/converter/TenantConverter.java b/src/main/java/neatlogic/framework/logback/converter/TenantConverter.java index 0b94ddd4c..dde5dbb9c 100644 --- a/src/main/java/neatlogic/framework/logback/converter/TenantConverter.java +++ b/src/main/java/neatlogic/framework/logback/converter/TenantConverter.java @@ -38,9 +38,8 @@ public class TenantConverter extends ClassicConverter implements Serializable { */ @Override public String convert(ILoggingEvent event) { - TenantContext tenantContext = TenantContext.get(); - if (tenantContext != null && StringUtils.isNotBlank(tenantContext.getTenantUuid())) { - return tenantContext.getTenantUuid(); + if (StringUtils.isNotBlank(TenantContext.get().getTenantUuid())) { + return TenantContext.get().getTenantUuid(); } else { Map map = event.getMDCPropertyMap(); String tenant = map.get("tenant"); -- Gitee