天天看点

解决方案:使用RedisTemplate存储至缓存数据乱码。问题分析解决方案

问题

使用RedisTemplate存储至缓存时,发现key和value都乱码,而使用stringRedisTemplate没有问题,如下图所示。

解决方案:使用RedisTemplate存储至缓存数据乱码。问题分析解决方案

分析

阅读RedisTemplate的源码发现,默认defaultSerializer为JdkSerializationRedisSerializer。

解决方案:使用RedisTemplate存储至缓存数据乱码。问题分析解决方案

阅读StringRedisTemplate的源码发现,默认为StringRedisSerializer.UTF_8。

解决方案:使用RedisTemplate存储至缓存数据乱码。问题分析解决方案
解决方案:使用RedisTemplate存储至缓存数据乱码。问题分析解决方案

解决方案

替换RedisTemplate序列化方式为StringRedisTemplate。

解决方案:使用RedisTemplate存储至缓存数据乱码。问题分析解决方案

继续阅读