【发布时间】:2021-12-04 15:43:38
【问题描述】:
我用Springboot集成Redis时出现问题。想自定义一个RedisTemplate,使用的时候发现一直是空的,无法注入。我的代码如下:
@Configuration
public class RedisConfig {
@Bean(name = "myRedisTemplate")
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(redisConnectionFactory);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
template.setKeySerializer(stringRedisSerializer);
template.setHashKeySerializer(stringRedisSerializer);
template.setValueSerializer(jackson2JsonRedisSerializer);
template.setHashKeySerializer(jackson2JsonRedisSerializer);
template.afterPropertiesSet();
return template;
}
@Autowired
@Qualifier(value = "myRedisTemplate")
private RedisTemplate<String, Object> redisTemplate;
调试模式下redisTemplate为空。不知道哪里出错了
【问题讨论】:
标签: spring-boot spring-data-redis