From 15c27748dc86f024e44191491c66d59ba5045f53 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Fri, 26 Jun 2026 11:00:41 -0700 Subject: [PATCH] =?UTF-8?q?fix(redis):=20=E9=80=82=E9=85=8D=20Redisson=204?= =?UTF-8?q?.6=20=E7=9A=84=20Spring=20Data=20Redis=20=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 排除 Redisson 默认引入的 redisson-spring-data-41 - 显式使用 redisson-spring-data-35 适配 Spring Boot 3.5 - RedisTemplate 复用同一个 JSON RedisSerializer - 单测基类切换为 RedissonAutoConfigurationV2 --- yudao-dependencies/pom.xml | 12 ++++++++++++ .../yudao-spring-boot-starter-redis/pom.xml | 4 ++++ .../redis/config/YudaoRedisAutoConfiguration.java | 7 ++++--- .../test/core/ut/BaseDbAndRedisUnitTest.java | 4 ++-- .../framework/test/core/ut/BaseRedisUnitTest.java | 4 ++-- 5 files changed, 24 insertions(+), 7 deletions(-) diff --git a/yudao-dependencies/pom.xml b/yudao-dependencies/pom.xml index 3b12403a3..013853c5e 100644 --- a/yudao-dependencies/pom.xml +++ b/yudao-dependencies/pom.xml @@ -287,6 +287,18 @@ org.redisson redisson-spring-boot-starter ${redisson.version} + + + org.redisson + + redisson-spring-data-41 + + + + + org.redisson + redisson-spring-data-35 + ${redisson.version} diff --git a/yudao-framework/yudao-spring-boot-starter-redis/pom.xml b/yudao-framework/yudao-spring-boot-starter-redis/pom.xml index b015c8492..e5d3a9a7c 100644 --- a/yudao-framework/yudao-spring-boot-starter-redis/pom.xml +++ b/yudao-framework/yudao-spring-boot-starter-redis/pom.xml @@ -26,6 +26,10 @@ org.redisson redisson-spring-boot-starter + + org.redisson + redisson-spring-data-35 + org.springframework.boot diff --git a/yudao-framework/yudao-spring-boot-starter-redis/src/main/java/cn/iocoder/yudao/framework/redis/config/YudaoRedisAutoConfiguration.java b/yudao-framework/yudao-spring-boot-starter-redis/src/main/java/cn/iocoder/yudao/framework/redis/config/YudaoRedisAutoConfiguration.java index 01eeb049d..b6374e9f0 100644 --- a/yudao-framework/yudao-spring-boot-starter-redis/src/main/java/cn/iocoder/yudao/framework/redis/config/YudaoRedisAutoConfiguration.java +++ b/yudao-framework/yudao-spring-boot-starter-redis/src/main/java/cn/iocoder/yudao/framework/redis/config/YudaoRedisAutoConfiguration.java @@ -28,9 +28,10 @@ public class YudaoRedisAutoConfiguration { // 使用 String 序列化方式,序列化 KEY 。 template.setKeySerializer(RedisSerializer.string()); template.setHashKeySerializer(RedisSerializer.string()); - // 使用 JSON 序列化方式(库是 Jackson ),序列化 VALUE 。 - template.setValueSerializer(buildRedisSerializer()); - template.setHashValueSerializer(buildRedisSerializer()); + // 使用 JSON 序列化方式,序列化 VALUE + RedisSerializer redisSerializer = buildRedisSerializer(); + template.setValueSerializer(redisSerializer); + template.setHashValueSerializer(redisSerializer); return template; } diff --git a/yudao-framework/yudao-spring-boot-starter-test/src/main/java/cn/iocoder/yudao/framework/test/core/ut/BaseDbAndRedisUnitTest.java b/yudao-framework/yudao-spring-boot-starter-test/src/main/java/cn/iocoder/yudao/framework/test/core/ut/BaseDbAndRedisUnitTest.java index 46a6927d6..ef0ea0558 100644 --- a/yudao-framework/yudao-spring-boot-starter-test/src/main/java/cn/iocoder/yudao/framework/test/core/ut/BaseDbAndRedisUnitTest.java +++ b/yudao-framework/yudao-spring-boot-starter-test/src/main/java/cn/iocoder/yudao/framework/test/core/ut/BaseDbAndRedisUnitTest.java @@ -8,7 +8,7 @@ import cn.iocoder.yudao.framework.test.config.RedisTestConfiguration; import cn.iocoder.yudao.framework.test.config.SqlInitializationTestConfiguration; import com.alibaba.druid.spring.boot3.autoconfigure.DruidDataSourceAutoConfigure; import com.baomidou.mybatisplus.autoconfigure.MybatisPlusAutoConfiguration; -import org.redisson.spring.starter.RedissonAutoConfiguration; +import org.redisson.spring.starter.RedissonAutoConfigurationV2; import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration; @@ -44,7 +44,7 @@ public class BaseDbAndRedisUnitTest { RedisTestConfiguration.class, // Redis 测试配置类,用于启动 RedisServer YudaoRedisAutoConfiguration.class, // 自己的 Redis 配置类 RedisAutoConfiguration.class, // Spring Redis 自动配置类 - RedissonAutoConfiguration.class, // Redisson 自动配置类 + RedissonAutoConfigurationV2.class, // Redisson 自动配置类 // 其它配置类 SpringUtil.class diff --git a/yudao-framework/yudao-spring-boot-starter-test/src/main/java/cn/iocoder/yudao/framework/test/core/ut/BaseRedisUnitTest.java b/yudao-framework/yudao-spring-boot-starter-test/src/main/java/cn/iocoder/yudao/framework/test/core/ut/BaseRedisUnitTest.java index ff6315a2d..1d1c4fb0d 100644 --- a/yudao-framework/yudao-spring-boot-starter-test/src/main/java/cn/iocoder/yudao/framework/test/core/ut/BaseRedisUnitTest.java +++ b/yudao-framework/yudao-spring-boot-starter-test/src/main/java/cn/iocoder/yudao/framework/test/core/ut/BaseRedisUnitTest.java @@ -3,7 +3,7 @@ package cn.iocoder.yudao.framework.test.core.ut; import cn.hutool.extra.spring.SpringUtil; import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration; import cn.iocoder.yudao.framework.test.config.RedisTestConfiguration; -import org.redisson.spring.starter.RedissonAutoConfiguration; +import org.redisson.spring.starter.RedissonAutoConfigurationV2; import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Import; @@ -25,7 +25,7 @@ public class BaseRedisUnitTest { RedisTestConfiguration.class, // Redis 测试配置类,用于启动 RedisServer RedisAutoConfiguration.class, // Spring Redis 自动配置类 YudaoRedisAutoConfiguration.class, // 自己的 Redis 配置类 - RedissonAutoConfiguration.class, // Redisson 自动配置类 + RedissonAutoConfigurationV2.class, // Redisson 自动配置类 // 其它配置类 SpringUtil.class