From 63a945029afeca4ed851fab0b7604d0072623c65 Mon Sep 17 00:00:00 2001 From: JasonYv Date: Thu, 21 May 2026 21:40:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20CacheConfig=20bean=20=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E6=94=B9=E4=B8=BA=20CustomRedisCacheManager?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 原 @Bean 方法返回 CacheManager 接口,冷启动时 Spring 走静态类型分析, 按 RedisCacheManager 类型注入会失败(IDE 热加载因按实际对象类型注册 能命中,所以问题被掩盖)。改为返回 CustomRedisCacheManager,冷热启动 均可正常注入。 --- .../src/main/java/net/lab1024/sa/base/config/CacheConfig.java | 3 +-- .../src/main/java/net/lab1024/sa/base/config/CacheConfig.java | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/smart-admin-api-java17-springboot3/sa-base/src/main/java/net/lab1024/sa/base/config/CacheConfig.java b/smart-admin-api-java17-springboot3/sa-base/src/main/java/net/lab1024/sa/base/config/CacheConfig.java index bccb2de9a..debf66b16 100644 --- a/smart-admin-api-java17-springboot3/sa-base/src/main/java/net/lab1024/sa/base/config/CacheConfig.java +++ b/smart-admin-api-java17-springboot3/sa-base/src/main/java/net/lab1024/sa/base/config/CacheConfig.java @@ -7,7 +7,6 @@ import net.lab1024.sa.base.module.support.cache.RedisCacheServiceImpl; import net.lab1024.sa.base.module.support.redis.CustomRedisCacheManager; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.cache.CacheManager; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.cache.RedisCacheConfiguration; @@ -37,7 +36,7 @@ public class CacheConfig { */ @Bean @ConditionalOnProperty(prefix = "spring.cache", name = {"type"}, havingValue = REDIS_CACHE) - public CacheManager cacheManager() { + public CustomRedisCacheManager cacheManager() { // 使用非阻塞模式的缓存写入器,适用于大多数高并发场景 RedisCacheWriter redisCacheWriter = RedisCacheWriter.nonLockingRedisCacheWriter(redisConnectionFactory); diff --git a/smart-admin-api-java8-springboot2/sa-base/src/main/java/net/lab1024/sa/base/config/CacheConfig.java b/smart-admin-api-java8-springboot2/sa-base/src/main/java/net/lab1024/sa/base/config/CacheConfig.java index 665a23ff4..932adef79 100644 --- a/smart-admin-api-java8-springboot2/sa-base/src/main/java/net/lab1024/sa/base/config/CacheConfig.java +++ b/smart-admin-api-java8-springboot2/sa-base/src/main/java/net/lab1024/sa/base/config/CacheConfig.java @@ -6,7 +6,6 @@ import net.lab1024.sa.base.module.support.cache.RedisCacheServiceImpl; import net.lab1024.sa.base.module.support.redis.CustomRedisCacheManager; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.cache.CacheManager; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.cache.RedisCacheConfiguration; @@ -38,7 +37,7 @@ public class CacheConfig { */ @Bean @ConditionalOnProperty(prefix = "spring.cache", name = {"type"}, havingValue = REDIS_CACHE) - public CacheManager cacheManager() { + public CustomRedisCacheManager cacheManager() { // 使用非阻塞模式的缓存写入器,适用于大多数高并发场景 RedisCacheWriter redisCacheWriter = RedisCacheWriter.nonLockingRedisCacheWriter(redisConnectionFactory);