From ed21f915550c268e984fa17c3fbbe8eeb528027e Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Mon, 23 Dec 2024 17:17:09 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BC=93=E5=AD=98=E7=AE=A1=E7=90=86=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/sqx/SqxApplication.java | 2 ++ src/main/java/com/sqx/config/RedisConfig.java | 19 +++++++++++++++++++ .../service/impl/CommonInfoServiceImpl.java | 9 +++++++-- 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/sqx/SqxApplication.java b/src/main/java/com/sqx/SqxApplication.java index 07ef054f..a3c22cfd 100644 --- a/src/main/java/com/sqx/SqxApplication.java +++ b/src/main/java/com/sqx/SqxApplication.java @@ -3,6 +3,7 @@ package com.sqx; import com.sqx.modules.pay.wuyou.WuyouPay; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cache.annotation.EnableCaching; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.scheduling.annotation.EnableScheduling; @@ -11,6 +12,7 @@ import java.util.Map; /** * @author GYJ */ +@EnableCaching @EnableScheduling @SpringBootApplication public class SqxApplication { diff --git a/src/main/java/com/sqx/config/RedisConfig.java b/src/main/java/com/sqx/config/RedisConfig.java index deb93e23..6fddb78c 100644 --- a/src/main/java/com/sqx/config/RedisConfig.java +++ b/src/main/java/com/sqx/config/RedisConfig.java @@ -1,12 +1,19 @@ package com.sqx.config; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.CacheManager; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.cache.RedisCacheConfiguration; +import org.springframework.data.redis.cache.RedisCacheManager; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.*; +import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; +import org.springframework.data.redis.serializer.RedisSerializationContext; import org.springframework.data.redis.serializer.StringRedisSerializer; +import java.time.Duration; + /** * Redis配置 * @@ -16,6 +23,18 @@ public class RedisConfig { @Autowired private RedisConnectionFactory factory; + @Bean + public CacheManager cacheManager(RedisConnectionFactory redisConnectionFactory) { + RedisCacheConfiguration cacheConfiguration = RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofMinutes(30)) + // 设置缓存过期时间为30分钟 + .serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(new StringRedisSerializer())) + .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer())) + .disableCachingNullValues(); + + return RedisCacheManager.builder(redisConnectionFactory) + .cacheDefaults(cacheConfiguration) + .build(); + } @Bean public RedisTemplate redisTemplate() { RedisTemplate redisTemplate = new RedisTemplate<>(); diff --git a/src/main/java/com/sqx/modules/common/service/impl/CommonInfoServiceImpl.java b/src/main/java/com/sqx/modules/common/service/impl/CommonInfoServiceImpl.java index 38318d04..8d8806a1 100644 --- a/src/main/java/com/sqx/modules/common/service/impl/CommonInfoServiceImpl.java +++ b/src/main/java/com/sqx/modules/common/service/impl/CommonInfoServiceImpl.java @@ -7,6 +7,9 @@ import com.sqx.modules.common.entity.CommonInfo; import com.sqx.modules.common.service.CommonInfoService; import com.sqx.modules.course.service.CourseService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.CacheConfig; +import org.springframework.cache.annotation.CacheEvict; +import org.springframework.cache.annotation.CachePut; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; @@ -16,6 +19,7 @@ import java.util.Date; * @author fang * @date 2020/7/8 */ +@CacheConfig(cacheNames = "common") @Service public class CommonInfoServiceImpl extends ServiceImpl implements CommonInfoService { @@ -43,19 +47,20 @@ public class CommonInfoServiceImpl extends ServiceImpl