From 7787f57521297df847bfd5f2b9af410b3fdac67e Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 20 十月 2026 16:28:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java
index f8288ce..d342f03 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/numgen/LambdaUtils.java
@@ -58,12 +58,17 @@
*/
public static <T> SerializedLambda resolve(SFunction<T, ?> func) {
Class<?> clazz = func.getClass();
- String canonicalName = clazz.getCanonicalName();
- return Optional.ofNullable(FUNC_CACHE.get(canonicalName))
+ // lambda/鏂规硶寮曠敤鐢熸垚鐨勬槸闅愯棌绫伙紝getCanonicalName() 杩斿洖 null锛孋oncurrentHashMap 涓嶆帴鍙� null key
+ String cacheKey = clazz.getCanonicalName();
+ if (cacheKey == null) {
+ cacheKey = clazz.getName();
+ }
+ final String key = cacheKey;
+ return Optional.ofNullable(FUNC_CACHE.get(key))
.map(WeakReference::get)
.orElseGet(() -> {
SerializedLambda lambda = SerializedLambda.resolve(func);
- FUNC_CACHE.put(canonicalName, new WeakReference<>(lambda));
+ FUNC_CACHE.put(key, new WeakReference<>(lambda));
return lambda;
});
}
--
Gitblit v1.9.3