在springboot中使用RedisTemplate的时候出现乱码
当我们想我们的Redis数据库中set(“userName”)时,我们在服务端中获取该key的时候出现了乱码\xe7\xbf\x81\xe6\xba\x90"原因:因为我们springboot中的RedisTemplate将我们的key保存的时候会将其进行序列化,此时我们在别的客户端获取的时候机会出现乱码。由于我们获取值时会将它进行反序列化,我们就无须设置value的反序列化。解决:我们需要自己定
·
当我们使用RedisTemplate向我们的Redis数据库中set(“originName”)时,我们在服务端中获取该key的时候出现了乱码\
xac\xed\x00\x05t\x00\noriginName`
原因:因为我们springboot中的RedisTemplate将我们的key保存的时候会将其进行序列化,此时我们在别的客户端获取的时候机会出现乱码。
解决:我们需要自己定义我们的RedisTemplate中的序列化机制
@Configuration
public class RedisTemplateConfig {
@Bean
public RedisTemplate<Object,Object> redisTemplate(RedisConnectionFactory connectionFactory){
RedisTemplate<Object, Object> objectObjectRedisTemplate = new RedisTemplate<>();
objectObjectRedisTemplate.setKeySerializer(new StringRedisSerializer());
objectObjectRedisTemplate.setHashKeySerializer(new StringRedisSerializer());
objectObjectRedisTemplate.setConnectionFactory(connectionFactory);
return objectObjectRedisTemplate;
}
}
由于我们获取值时会将它进行反序列化,我们就无须设置value的反序列化
更多推荐
已为社区贡献2条内容
所有评论(0)