From e685b58fd40cf28a20844643d70cc5f5b46ca037 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期五, 10 四月 2026 11:08:17 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/gtzxinglijicun
---
server/services/src/main/java/com/doumee/config/cache/RedisConfig.java | 36 +++++++++++++++++++++++++-----------
1 files changed, 25 insertions(+), 11 deletions(-)
diff --git a/server/services/src/main/java/com/doumee/config/cache/RedisConfig.java b/server/services/src/main/java/com/doumee/config/cache/RedisConfig.java
index de523ca..47353ea 100644
--- a/server/services/src/main/java/com/doumee/config/cache/RedisConfig.java
+++ b/server/services/src/main/java/com/doumee/config/cache/RedisConfig.java
@@ -1,9 +1,14 @@
package com.doumee.config.cache;
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.PropertyAccessor;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;
import java.io.Serializable;
@@ -17,16 +22,25 @@
public class RedisConfig {
@Bean
- public RedisTemplate<Serializable, Serializable> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
- RedisTemplate<Serializable, Serializable> redisTemplate = new RedisTemplate<>();
- redisTemplate.setConnectionFactory(redisConnectionFactory);
- // 榛樿搴忓垪鍖栨柟寮�
- redisTemplate.setDefaultSerializer(new StringRedisSerializer());
- // 鍊煎簭鍒楀寲鏂瑰紡
- RedisValueDefaultSerializer<Object> serializer = new RedisValueDefaultSerializer<>(Object.class);
- redisTemplate.setValueSerializer(serializer);
- redisTemplate.setHashValueSerializer(serializer);
- redisTemplate.afterPropertiesSet();
- return redisTemplate;
+ @SuppressWarnings("all")
+ public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
+ RedisTemplate<String, Object> template = new RedisTemplate<String, Object>();
+ template.setConnectionFactory(factory);
+ Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
+ ObjectMapper om = new ObjectMapper();
+ om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
+ om.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL);
+ jackson2JsonRedisSerializer.setObjectMapper(om);
+ StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
+ // key閲囩敤String鐨勫簭鍒楀寲鏂瑰紡
+ template.setKeySerializer(stringRedisSerializer);
+ // hash鐨刱ey涔熼噰鐢⊿tring鐨勫簭鍒楀寲鏂瑰紡
+ template.setHashKeySerializer(stringRedisSerializer);
+ // value搴忓垪鍖栨柟寮忛噰鐢╦ackson
+ template.setValueSerializer(jackson2JsonRedisSerializer);
+ // hash鐨剉alue搴忓垪鍖栨柟寮忛噰鐢╦ackson
+ template.setHashValueSerializer(jackson2JsonRedisSerializer);
+ template.afterPropertiesSet();
+ return template;
}
}
--
Gitblit v1.9.3