RedisTemplateConfig.java 2.7 KB
Newer Older
苗卫卫 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
//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;
//    }
//
//}