Redis缓存-序列化对象存储乱码问题的解决


Posted in Redis onJune 21, 2021

使用Redis缓存对象会出现下图现象:

Redis缓存-序列化对象存储乱码问题的解决

键值对都是乱码形式。

解决以上问题:

如果是xml配置的

我们直接注入官方给定的keySerializer,valueSerializer,hashKeySerializer即可:

<bean id="apiRedisTemplate" class="org.springframework.data.redis.core.RedisTemplate"
        p:connection-factory-ref="apiCacheRedisConnectionFactory">
        <property name="keySerializer">
            <bean
                class="org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer" />
        </property>
        <property name="valueSerializer">
            <bean
                class="org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer" />
        </property>

        <property name="hashKeySerializer">
            <bean
                class="org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer" />
        </property>
        <property name="hashValueSerializer">
            <bean
                class="org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer" />
        </property>
        <property name="stringSerializer">
            <bean
                class="org.springframework.data.redis.serializer.StringRedisSerializer" />
        </property>
    </bean>

spring boot 项目配置RedisConfig的时候使用以下方法:

@Configuration
public class RedisConfig {
    @Bean("jsonRedisTemplate")
    public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory)
            throws UnknownHostException {
        RedisTemplate<Object, Object> template = new RedisTemplate<Object, Object>();
        template.setConnectionFactory(redisConnectionFactory);      //解决日期序列化问题
        ObjectMapper om = new ObjectMapper();
        om.setDateFormat(new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"));
        GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer(om);
        template.setDefaultSerializer(genericJackson2JsonRedisSerializer);
        return template;

    }
}

Redis存入中文,取出来是乱码wenti

默认情况下,用redis存入中文,取出时会出现乱码情况,如图:

Redis缓存-序列化对象存储乱码问题的解决

解决

我们再启动redis时,可以在redis-cli 后面加上 --raw,如图

Redis缓存-序列化对象存储乱码问题的解决

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Redis 相关文章推荐
redis 限制内存使用大小的实现
May 08 Redis
分布式锁为什么要选择Zookeeper而不是Redis?看完这篇你就明白了
May 21 Redis
解析Redis Cluster原理
Jun 21 Redis
Redis集群的关闭与重启操作
Jul 07 Redis
浅谈redis整数集为什么不能降级
Jul 25 Redis
Redis集群新增、删除节点以及动态增加内存的方法
Sep 04 Redis
Redis三种集群模式详解
Oct 05 Redis
详解redis在微服务领域的贡献
Oct 16 Redis
关于SpringBoot 使用 Redis 分布式锁解决并发问题
Nov 17 Redis
Redis超详细讲解高可用主从复制基础与哨兵模式方案
Apr 07 Redis
Redis高并发缓存架构性能优化
May 15 Redis
Redis实现主从复制方式(Master&Slave)
Jun 21 Redis
比较几种Redis集群方案
解析Redis Cluster原理
解析高可用Redis服务架构分析与搭建方案
Redis基于Bitmap实现用户签到功能
redis实现的四种常见限流策略
Redis 哨兵集群的实现
Redis可视化客户端小结
You might like
yii实现创建验证码实例解析
2014/07/31 PHP
PHP+MySQL删除操作实例
2015/01/21 PHP
Laravel实现用户注册和登录
2015/01/23 PHP
thinkphp验证码的实现(form、ajax实现验证)
2016/07/28 PHP
一段利用WSH获取登录时间的jscript代码
2008/05/11 Javascript
jquery里的each使用方法详解
2010/12/22 Javascript
jQuery提交表单ajax查询实例代码
2012/10/07 Javascript
JavaScript作用域链示例分享
2014/05/27 Javascript
node.js中的path.extname方法使用说明
2014/12/09 Javascript
JQuery中使文本框获得焦点的方法实例分析
2015/02/28 Javascript
JS给Textarea文本框添加行号的方法
2015/08/20 Javascript
JS响应鼠标点击实现两个滑块区间拖动效果
2015/10/26 Javascript
JavaScript中数组添加值和访问值常见问题
2016/02/06 Javascript
浅谈Sticky组件的改进实现
2016/03/22 Javascript
AngularJS 执行流程详细介绍
2016/08/18 Javascript
Vue项目webpack打包部署到服务器的实例详解
2017/07/17 Javascript
vue-cli实现多页面多路由的示例代码
2018/01/30 Javascript
jQuery动态添加li标签并添加属性和绑定事件方法
2018/02/24 jQuery
详解vue-cli下ESlint 配置说明
2018/09/03 Javascript
vue 解决setTimeOut和setInterval函数无效报错的问题
2020/07/30 Javascript
[02:25]DOTA2英雄基础教程 虚空假面
2014/01/02 DOTA
python实现统计代码行数的方法
2015/05/22 Python
解决Python网页爬虫之中文乱码问题
2018/05/11 Python
pyqt5 comboBox获得下标、文本和事件选中函数的方法
2019/06/14 Python
通过PYTHON来实现图像分割详解
2019/06/26 Python
浅谈优化Django ORM中的性能问题
2020/07/09 Python
西班牙英格列斯百货英国官网:El Corte Inglés英国
2017/10/30 全球购物
职业生涯规划书的格式
2013/12/29 职场文书
浙大毕业生自荐信
2014/01/26 职场文书
高中语文课后反思
2014/04/27 职场文书
喝酒驾驶检讨书
2014/10/01 职场文书
2015毕业生实习工作总结
2014/12/12 职场文书
2019下半年英语教师的教学工作计划(3篇)
2019/09/25 职场文书
导游词之云南丽江-泸沽湖
2019/09/26 职场文书
Python实现Hash算法
2022/03/18 Python
vue中使用mockjs配置和使用方式
2022/04/06 Vue.js