关于对于个人对于redis序列化的理解

文章讲述了Redis默认使用JDK序列化器可能导致数据乱码的问题,介绍如何通过配置自定义序列化器来解决,比如在SpringBoot中,系统会自动检测并应用新的序列化器,使得键值对在图形化界面更易阅读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      首先我们都知道,redis在存入数据时,需要使用序列化将它写入到内存中,但是,如果我们不指定格式,它就会默认使用jdk序列化器,这个序列化器序列化之后,我们读取的时候,再使用反序列化器读取,可能对我直观上上没有什么影响,但是到redis图形化界面我们就会看到,它存储的k和v都是乱码的状态,这样的话,就非常不利于我们直观地看它的k值,那么为了解决这一问题,redis也提供了别的序列化器供我们进行配置,redis本身是继承了一个redisaccess类,并且它这个父类还实现了一个初始化bean接口,意思就是springboot在启动的时候,会默认初始化redis序列化器,它底层会自动检查当前是否配置了新的序列化器,如果配置了,就会使用新的序列化器,如果没有,则会默认使用jdk序列化器.

   举个易于理解的例子,它就像我们存入文件和读取文件时一样,比如我们存入的是文件,但是存入到文件中是我们看不懂乱码,如果我们不指定格式,它默认会使用的可能是是GBK,那么就是乱码,如果我们指定使用UTF-8,那么它就会使用UTF-8进行存入,利用这种思想,我们就可以自定义序列化器,

让它存入k的时候使用我们自定义的,然后我们看到的就不是乱码了,这样的话,k是我们看的懂的,v是解密的,看不到的,这样就达到我们的目标了.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值