当我们使用springboot整合redis时,会用到redisTemplate,而是用redisTemplate经常会发现在各种可视化的客户端里面编程了字节数组,例如这样
这是为什么呢?因为redisTemplate默认使用的是jdk的序列化方式,jdk序列化的方式是会将内容转化成字节数组的。
所以这个时候就需要使用StringRedisTemplate了,StringRedisTemplate使用的是 StringRedisSerializer,可以以可读写的形式来展现内容,所以ruguo我们想更加可视化的使用redis,则需要加一个配置类来指定Redis的序列化方式。
@Configuration
public class RedisConfig {
@Bean
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(redisConnectionFactory);
RedisSerializer redisSerializer = new StringRedisSerializer();
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
redisTemplate.setKeySerializer(redisSerializer);
redisTemplate.setValueSerializer(jackson2JsonRedisSerializer);
return redisTemplate;
}
}