You've already forked FrameTour-BE
57 lines
2.3 KiB
Java
57 lines
2.3 KiB
Java
package com.ycwl.basic.config;
|
|
|
|
import org.springframework.cache.annotation.CachingConfigurerSupport;
|
|
import org.springframework.cache.annotation.EnableCaching;
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.Configuration;
|
|
import org.springframework.data.redis.cache.RedisCacheConfiguration;
|
|
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.RedisSerializationContext;
|
|
import org.springframework.data.redis.serializer.StringRedisSerializer;
|
|
|
|
import java.time.Duration;
|
|
|
|
/**
|
|
* @author wenshijia
|
|
* @date 2021年07月05日 18:34
|
|
* 修改redis缓存序列化器
|
|
*/
|
|
@Configuration
|
|
@EnableCaching
|
|
public class CustomRedisCacheManager extends CachingConfigurerSupport {
|
|
|
|
@Bean
|
|
public RedisCacheConfiguration redisCacheConfiguration() {
|
|
Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<>(Object.class);
|
|
RedisCacheConfiguration configuration = RedisCacheConfiguration.defaultCacheConfig();
|
|
configuration = configuration.serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(jackson2JsonRedisSerializer)).entryTtl(Duration.ofMinutes(1));
|
|
return configuration;
|
|
}
|
|
|
|
/**
|
|
* 处理redis连接工具显示redis key值显示乱码问题,value值没处理
|
|
*
|
|
* @param factory RedisConnectionFactory
|
|
* @return org.springframework.data.redis.core.RedisTemplate<java.lang.String, java.lang.Object>
|
|
* @date 2022/9/21 13:58
|
|
*/
|
|
@Bean
|
|
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
|
|
RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
|
|
|
|
redisTemplate.setConnectionFactory(factory);
|
|
|
|
final StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
|
|
redisTemplate.setKeySerializer(stringRedisSerializer);
|
|
redisTemplate.setValueSerializer(stringRedisSerializer);
|
|
|
|
redisTemplate.setHashKeySerializer(stringRedisSerializer);
|
|
|
|
redisTemplate.afterPropertiesSet();
|
|
return redisTemplate;
|
|
}
|
|
|
|
}
|