redis的key与value乱码问题
redis的key与value乱码问题
- key乱码问题
因redis默认使用JdkSerializationRedisSerializer来进行序列化,造成key是乱码,如下: - 解决key乱码
@Configuration
public class RedisConfig { @Beanpublic RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory factory) {//创建模板类RedisTemplate<Object, Object> template = new RedisTemplate<>();template.setConnectionFactory(factory);RedisSerializer stringSerializer = new StringRedisSerializer();template.setKeySerializer(stringSerializer);template.setValueSerializer(stringSerializer);template.setHashKeySerializer(stringSerializer);template.setHashValueSerializer(stringSerializer);return template;}
但是不建议使用此方法,因为这种方式key与value都只能存储String类型的数据
修改后的代码
@Configuration
public class RedisConfig {@Bean(name = "springSessionDefaultRedisSerializer")public GenericJackson2JsonRedisSerializer getGenericJackson2JsonRedisSerializer(){return new GenericJackson2JsonRedisSerializer();}@Beanpublic RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory factory) {//创建模板类RedisTemplate<Object, Object> template = new RedisTemplate<>();template.setConnectionFactory(factory);// 配置默认的序列化器template.setDefaultSerializer(getGenericJackson2JsonRedisSerializer());//redis默认使用JdkSerializationRedisSerializer来进行序列化,造成key是乱码,使用下列进行序列化,修复乱码//解决key乱码问题RedisSerializer<String> stringSerializer = new StringRedisSerializer();template.setKeySerializer(stringSerializer);template.setHashKeySerializer(stringSerializer);//value不建议使用stringSerializer,因为使用后只能存String类型的值,其他类型不支持/*** template.setValueSerializer(stringSerializer);* template.setHashValueSerializer(stringSerializer);*/return template;}
- 修改后的方法对于日期字段好像还是有问题,因为已满足需求,所以没尝试了
redis的key与value乱码问题相关推荐
- 为什么我Redis中key惊现“乱码”?
为什么Redis中key会惊现"乱码"? 最近在做一个秒杀项目,过程中大量应用到了redis. 而我在用ElasticJob进行数据化初始化到Redis数据库时发现这些key都出现 ...
- Redis整合Spring Data Redis 开发key和value乱码
Spring整合Redis默认使用的是JDK的序列化 将key,value的序列化改成Spring的就行了. 这种在 可视化界面 看见□□ 其实只是可视化界面显示问题, 真正的数据, 其实并无乱码. ...
- 关于springboot集成redis及关于redis的Key 乱码问题
一.在pom文件中引入redis <dependency><groupId>org.springframework.boot</groupId><artifa ...
- redis 值字符串前面部分乱码_Spring-RedisTemplate写入数据乱码问题的复现与解决
org.springframework.data.redis是Spring框架对Redis的默认集成,我们在实际项目中,也经常使用它的RedisTemplate去操作Redis,一般来说没什么问题,但 ...
- redis 值字符串前面部分乱码_解决spring boot redis序列化key-value乱码
最近使用spring-data-redis RedisTemplate 操作redis时发现存储在redis中的key不是设置的string值, 前面还多出了许多类似\xac\xed\x00\x05t ...
- redis企业级应用(下)-如何维护redis的key
2019独角兽企业重金招聘Python工程师标准>>> 在实际项目开发中,我们会有很多的地方会用到redis,当然也会设置很多的key,但是一旦这些key键多起来了难免会造成重复,或 ...
- 查看redis缓存大小_一个 bug 引发了服务器崩溃,对应 redis 的 key 回收原理你清楚了吗?...
1 背景 项目中使用了 redis 做旁路缓存.读请求到来时,有以下操作:1.检查缓存,有则返回2.没有则读取数据库,将结果回写到缓存中. 写请求到来时,有以下操作:1.更新数据库 2.更新缓存(实际 ...
- Redis 键(key) 命令
Redis 键(key) 命令 命令 描述 Redis DEL 命令 该命令用于在 key 存在是删除 key. Redis Dump 命令 序列化给定 key ,并返回被序列化的值. Redis E ...
- Redis 热 Key 发现以及解决办法
背景介绍 最近在技术交流微信群里看大家讨论技术,其中有谈到 Redis 热 Key 的一些问题解决方案,我也仔细思考了一下我们目前系统中 Redis 的使用场景,我们是不是也存在热 Key 问题,或者 ...
- Redis的key和value大小限制
Redis的key和value大小限制 今天研究了下将java bean序列化到redis中存储起来,突然脑袋灵光一闪,对象大小会不会超过redis限制?不管怎么着,还是搞清楚一下比较好,所以就去问了 ...
最新文章
- python读取压缩包中csv文件
- 零基础如何学好Python?这2点一定要明白
- VC控件 Progress Control
- ConcurrentHashMap中的2的n次方幂上舍入方法
- $(document).ready() 和 window.onload 的区别
- 宝贝,我帮你清了购物车哦!
- 最全银行IT核心系统:研究框架(165页)
- 目标检测、语义分割性能指标
- mysql数据库密码怎么修改_MySQL数据库密码如何修改?
- pc端+移动端电商源码
- win8metro应用磁贴背景修改说明
- 计算机网络-字符编码的由来(为什么会有乱码,ASCII、Unicode、GBK和UTF-8字符编码区别)
- 天梯赛HBU训练营—— 敲笨钟(运行时错误)
- 莱布尼兹懂得超实数吗?
- Web前端成都培训机构
- 电脑通过手机上网的方法
- 2020团队天梯赛-正赛-L3题目集
- android 获取屏幕的物理尺寸
- 计算机信息世界PPT,奇妙的信息世界课件.ppt
- Kaggle系列(3)- Telco Customer Churn