自定义 RedisTemplate(转载于狂神说)
@Configuration
public class RedisConfig {
@Bean
@SuppressWarnings("all")
public RedisTemplate
<String, Object> redisTemplate(RedisConnectionFactory factory
) {
RedisTemplate
<String, Object> template
= new RedisTemplate<String, Object>();
template
.setConnectionFactory(factory
);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer
= new Jackson2JsonRedisSerializer(Object
.class);
ObjectMapper om
= new ObjectMapper();
om
.setVisibility(PropertyAccessor
.ALL
, JsonAutoDetect
.Visibility
.ANY
);
om
.enableDefaultTyping(ObjectMapper
.DefaultTyping
.NON_FINAL
);
jackson2JsonRedisSerializer
.setObjectMapper(om
);
StringRedisSerializer stringRedisSerializer
= new StringRedisSerializer();
template
.setKeySerializer(stringRedisSerializer
);
template
.setHashKeySerializer(stringRedisSerializer
);
template
.setValueSerializer(jackson2JsonRedisSerializer
);
template
.setHashValueSerializer(jackson2JsonRedisSerializer
);
template
.afterPropertiesSet();
return template
;
}
}