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 Cluster 字段模糊匹配及删除
May 27 Redis
解析Redis Cluster原理
Jun 21 Redis
在redisCluster中模糊获取key方式
Jul 09 Redis
在项目中使用redis做缓存的一些思路
Sep 14 Redis
SpringBoot集成Redis的思路详解
Oct 16 Redis
Redis中缓存穿透/击穿/雪崩问题和解决方法
Dec 04 Redis
redis的list数据类型相关命令介绍及使用
Jan 18 Redis
基于Redis zSet实现滑动窗口对短信进行防刷限流的问题
Feb 12 Redis
redis sentinel监控高可用集群实现的配置步骤
Apr 01 Redis
windows安装 redis 6.2.6最新步骤详解
Apr 26 Redis
浅谈Redis缓冲区机制
Jun 05 Redis
Redis实现分布式锁的五种方法详解
Jun 14 Redis
比较几种Redis集群方案
解析Redis Cluster原理
解析高可用Redis服务架构分析与搭建方案
Redis基于Bitmap实现用户签到功能
redis实现的四种常见限流策略
Redis 哨兵集群的实现
Redis可视化客户端小结
You might like
php采集内容中带有图片地址的远程图片并保存的方法
2015/01/03 PHP
Zend Framework入门教程之Zend_Registry组件用法详解
2016/12/09 PHP
PHP符合PSR编程规范的实例分享
2016/12/21 PHP
在chrome中window.onload事件的一些问题
2010/03/01 Javascript
使用UglifyJS合并/压缩JavaScript的方法
2012/03/07 Javascript
img onload事件绑定各浏览器均可执行
2012/12/19 Javascript
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
在jquery中combobox多选的不兼容问题总结
2013/12/24 Javascript
用html+css+js实现的一个简单的图片切换特效
2014/05/28 Javascript
在JavaScript的正则表达式中使用exec()方法
2015/06/16 Javascript
jQuery动画效果实现图片无缝连续滚动
2016/01/12 Javascript
如何实现json数据可视化详解
2016/11/24 Javascript
使用openSpeDiv方法实现Ecshop登录弹窗框效果
2017/03/13 Javascript
Javascript前端经典的面试题及答案
2017/03/14 Javascript
jQuery插件FusionCharts绘制的2D条状图效果【附demo源码】
2017/05/13 jQuery
JS生成随机打乱数组的方法示例
2017/12/23 Javascript
详解vue-router传参的两种方式
2018/09/10 Javascript
node.js中npm包管理工具用法分析
2020/02/14 Javascript
谈谈我在vue-cli3中用预渲染遇到的坑
2020/04/22 Javascript
[02:04]2014DOTA2国际邀请赛 BBC小组赛第三天总结
2014/07/12 DOTA
[01:24:16]2018DOTA2亚洲邀请赛 4.6 全明星赛
2018/04/10 DOTA
使用python删除nginx缓存文件示例(python文件操作)
2014/03/26 Python
Django自定义分页与bootstrap分页结合
2021/02/22 Python
Python基于回溯法子集树模板解决全排列问题示例
2017/09/07 Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
2018/04/18 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
2018/05/25 Python
浅析python3字符串格式化format()函数的简单用法
2018/12/07 Python
解决安装新版PyQt5、PyQT5-tool后打不开并Designer.exe提示no Qt platform plugin的问题
2020/04/24 Python
Python如何输出警告信息
2020/07/30 Python
python 基于opencv操作摄像头
2020/12/24 Python
戴尔新加坡官网:Dell Singapore
2020/12/13 全球购物
法定代表人授权委托书格式
2014/10/14 职场文书
滴水洞导游词
2015/02/10 职场文书
2015年建党94周年演讲稿
2015/03/19 职场文书
中学生社会实践教育活动总结
2015/05/06 职场文书
幽灵公主观后感
2015/06/09 职场文书