From 3d423972bc717ac4a8167323f894ca57980fa761 Mon Sep 17 00:00:00 2001 From: wangys <3401275564@qq.com> Date: Thu, 18 Dec 2025 14:00:31 +0800 Subject: [PATCH] =?UTF-8?q?redis=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/FastJson2JsonRedisSerializer.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/schoolNewsServ/common/common-redis/src/main/java/org/xyzh/common/redis/config/FastJson2JsonRedisSerializer.java b/schoolNewsServ/common/common-redis/src/main/java/org/xyzh/common/redis/config/FastJson2JsonRedisSerializer.java index 5a9b68b..762b9ee 100644 --- a/schoolNewsServ/common/common-redis/src/main/java/org/xyzh/common/redis/config/FastJson2JsonRedisSerializer.java +++ b/schoolNewsServ/common/common-redis/src/main/java/org/xyzh/common/redis/config/FastJson2JsonRedisSerializer.java @@ -37,9 +37,15 @@ public class FastJson2JsonRedisSerializer implements RedisSerializer { return new byte[0]; } + // 对String类型直接返回原始字节,不做JSON序列化 + if (t instanceof String) + { + return ((String) t).getBytes(DEFAULT_CHARSET); + } return JSON.toJSONString(t, JSONWriter.Feature.WriteClassName).getBytes(DEFAULT_CHARSET); } + @SuppressWarnings("unchecked") @Override public T deserialize(byte[] bytes) throws SerializationException { @@ -48,7 +54,15 @@ public class FastJson2JsonRedisSerializer implements RedisSerializer return null; } String str = new String(bytes, DEFAULT_CHARSET); - + // 对String类型直接返回字符串 + if (clazz == String.class || clazz == Object.class && !str.startsWith("{") && !str.startsWith("[")) + { + // 如果是纯字符串(非JSON格式),直接返回 + if (!str.startsWith("\"") && !str.startsWith("{") && !str.startsWith("[")) + { + return (T) str; + } + } return JSON.parseObject(str, clazz, AUTO_TYPE_FILTER); } }