//package com.starcharge.config; // //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.cache.RedisCacheWriter; //import org.springframework.data.redis.connection.RedisConnectionFactory; //import org.springframework.data.redis.core.RedisTemplate; //import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; //import org.springframework.data.redis.serializer.RedisSerializationContext; //import org.springframework.data.redis.serializer.RedisSerializer; //import org.springframework.data.redis.serializer.StringRedisSerializer; // ///** // * @Description redis序列化 // * @author liwenxiang // * @date 2020/7/17 10:37 // */ //@Configuration //public class RedisTemplateConfig { // @Bean(name = "redisTemplate") // public RedisTemplate<String,Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) { // RedisTemplate<String,Object> redisTemplate = new RedisTemplate<>(); // redisTemplate.setConnectionFactory(redisConnectionFactory); // redisTemplate.setKeySerializer(keySerializer()); // redisTemplate.setHashKeySerializer(keySerializer()); // redisTemplate.setValueSerializer(valueSerializer()); // redisTemplate.setHashValueSerializer(valueSerializer()); // return redisTemplate; // } // // private RedisSerializer<String> keySerializer() { // return new StringRedisSerializer(); // } // // private RedisSerializer<Object> valueSerializer() { // return new GenericJackson2JsonRedisSerializer(); // } // // @Bean // CacheManager cacheManager(RedisConnectionFactory connectionFactory) { // //初始化一个RedisCacheWriter // RedisCacheWriter redisCacheWriter= RedisCacheWriter.nonLockingRedisCacheWriter(connectionFactory); // //设置CacheManager的值序列化方式为json序列化 // RedisSerializer<Object> jsonSerializer = new GenericJackson2JsonRedisSerializer(); // RedisSerializationContext.SerializationPair<Object> pair= RedisSerializationContext.SerializationPair.fromSerializer(jsonSerializer); // RedisCacheConfiguration defaultCacheConfig= RedisCacheConfiguration.defaultCacheConfig().serializeValuesWith(pair); // // 设置默认超过期时间是30秒 // // defaultCacheConfig.entryTtl(Duration.ofSeconds(30)); // // 初始化RedisCacheManager // RedisCacheManager cacheManager= new RedisCacheManager(redisCacheWriter,defaultCacheConfig); // return cacheManager; // } // //}