From 015b4060011ed00262369d49fc36d420f2f040a4 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期五, 25 十月 2024 11:09:23 +0800 Subject: [PATCH] !591 发布 5.2.3 正式版 Merge pull request !591 from 疯狂的狮子Li/dev --- ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java | 16 ++++++++++------ 1 files changed, 10 insertions(+), 6 deletions(-) diff --git a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java index a6d3cf9..2d795e0 100644 --- a/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java +++ b/ruoyi-common/ruoyi-common-encrypt/src/main/java/org/dromara/common/encrypt/core/EncryptorManager.java @@ -17,7 +17,10 @@ import org.springframework.util.ClassUtils; import java.lang.reflect.Field; -import java.util.*; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.stream.Collectors; @@ -34,7 +37,7 @@ /** * 缂撳瓨鍔犲瘑鍣� */ - Map<EncryptContext, IEncryptor> encryptorMap = new ConcurrentHashMap<>(); + Map<Integer, IEncryptor> encryptorMap = new ConcurrentHashMap<>(); /** * 绫诲姞瀵嗗瓧娈电紦瀛� @@ -67,11 +70,12 @@ * @param encryptContext 鍔犲瘑鎵ц鑰呴渶瑕佺殑鐩稿叧閰嶇疆鍙傛暟 */ public IEncryptor registAndGetEncryptor(EncryptContext encryptContext) { - if (encryptorMap.containsKey(encryptContext)) { - return encryptorMap.get(encryptContext); + int key = encryptContext.hashCode(); + if (encryptorMap.containsKey(key)) { + return encryptorMap.get(key); } IEncryptor encryptor = ReflectUtil.newInstance(encryptContext.getAlgorithm().getClazz(), encryptContext); - encryptorMap.put(encryptContext, encryptor); + encryptorMap.put(key, encryptor); return encryptor; } @@ -81,7 +85,7 @@ * @param encryptContext 鍔犲瘑鎵ц鑰呴渶瑕佺殑鐩稿叧閰嶇疆鍙傛暟 */ public void removeEncryptor(EncryptContext encryptContext) { - this.encryptorMap.remove(encryptContext); + this.encryptorMap.remove(encryptContext.hashCode()); } /** -- Gitblit v1.9.3