package com.order.erp.config; import org.springframework.context.annotation.Bean; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer; import javax.annotation.Resource; public class RedisConfig { @Resource private LettuceConnectionFactory lqlcfactory; /** * @param connectionFactory * @return */ @Bean public RedisTemplate redisTemplate(RedisConnectionFactory connectionFactory) { RedisTemplate template = new RedisTemplate(); template.setConnectionFactory(connectionFactory); return template; } /** * 配置该bean是为了获取logistics 1.0存入redis的数据 * 序列化方式保持跟logistics 1.0统一 * * @param factory * @return */ @Bean(name = "logisticsRedisTemplate") public RedisTemplate<String, Object> logisticsRedisTemplate(RedisConnectionFactory factory) { RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>(); redisTemplate.setConnectionFactory(lqlcfactory); redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer()); redisTemplate.setKeySerializer(new StringRedisSerializer()); return redisTemplate; } @Bean public StringRedisTemplate stringRedisTemplate(RedisConnectionFactory factory) { StringRedisTemplate stringRedisTemplate = new StringRedisTemplate(); // lqlcfactory.setShareNativeConnection(true); stringRedisTemplate.setConnectionFactory(lqlcfactory); return stringRedisTemplate; } }