diff --git a/src/main/java/com/syjiaer/clinic/server/common/config/RedisConfig.java b/src/main/java/com/syjiaer/clinic/server/common/config/RedisConfig.java index af27130..7f2b28c 100644 --- a/src/main/java/com/syjiaer/clinic/server/common/config/RedisConfig.java +++ b/src/main/java/com/syjiaer/clinic/server/common/config/RedisConfig.java @@ -15,7 +15,16 @@ public class RedisConfig { public RedisTemplate redisTemplate(RedisConnectionFactory connectionFactory) { RedisTemplate template = new RedisTemplate<>(); template.setConnectionFactory(connectionFactory); + // 设置 key 和 hashKey 使用 StringRedisSerializer template.setKeySerializer(new StringRedisSerializer()); + template.setHashKeySerializer(new StringRedisSerializer()); + + // 设置 value 和 hashValue 使用 StringRedisSerializer + template.setValueSerializer(new StringRedisSerializer()); + template.setHashValueSerializer(new StringRedisSerializer()); + + template.afterPropertiesSet(); + return template; } diff --git a/src/main/java/com/syjiaer/clinic/server/common/util/CacheUtil.java b/src/main/java/com/syjiaer/clinic/server/common/util/CacheUtil.java index dae3e97..757f8b4 100644 --- a/src/main/java/com/syjiaer/clinic/server/common/util/CacheUtil.java +++ b/src/main/java/com/syjiaer/clinic/server/common/util/CacheUtil.java @@ -21,9 +21,9 @@ public class CacheUtil { } public T get(String key, Class clazz) { - Object object = redisTemplate.opsForValue().get(key); - T t = JSON.parseObject((String) object, clazz); - return t; + String json = (String) redisTemplate.opsForValue().get(key); + if (json == null) return null; + return JSON.parseObject(json, clazz); } public JSONObject get(String key) {