Redis 插入中文乱码键

Java 代码:

bash 复制代码
    @Bean
    // 静态代理模式: Redis 客户端代理类增强
    public StringRedisTemplateProxy stringRedisTemplateProxy(RedisKeySerializer redisKeySerializer,
                                                             StringRedisTemplate stringRedisTemplate,
                                                             RedissonClient redissonClient) {
        stringRedisTemplate.setKeySerializer(redisKeySerializer); // UTF-8 实例化过
        return new StringRedisTemplateProxy(stringRedisTemplate, redisDistributedProperties, redissonClient);
    }
bash 复制代码
    @Override
    public void put(String key, Object value, long timeout, TimeUnit timeUnit) {
        // actual 是正确中文信息        
        String actual = value instanceof String ? (String) value : JSON.toJSONString(value);
        stringRedisTemplate.opsForValue().set(key, actual, timeout, timeUnit);
    }

验证:

bash 复制代码
redis-cli -p 6380 --raw

# 执行命令查看键 -> 中文乱码
KEYS *
index12306-ticket-service:train_station_remaining_ticket:2_åŒ---京å---_æ­å·žä¸œ
index12306-ticket-service:train_info:3
distributed_id_generator_config
index12306-ticket-service:train_station_remaining_ticket:1_济å---西_æ­å·žä¸œ
index12306-ticket-service:train_station_remaining_ticket:3_å---京_æµ·å®
index12306-ticket-service:train_station_price:3_åŒ---京_å¾·å·ž
index12306-ticket-service:region_train_station:åŒ---京_æ­å·ž
index12306-ticket-service:train_station_remaining_ticket:4_åŒ---京å---_æ­å·

解决方法:

-> 由于 Redis 中存储的键名本身是乱码格式 -> 清除数据 -> 重新写入

bash 复制代码
127.0.0.1:6380> FLUSHDB
OK
127.0.0.1:6380> KEYS *

127.0.0.1:6380> KEYS *
index12306-ticket-service:train_station_remaining_ticket:3_嘉兴_海宁
index12306-ticket-service:train_station_price:3_北京_杭州
index12306-ticket-service:train_station_remaining_ticket:1_南京南_杭州东
index12306-ticket-service:train_station_remaining_ticket:1_济南西_宁波
index12306-ticket-service:train_station_remaining_ticket:3_南京_嘉兴
相关推荐
Amber_376 小时前
mysql 死锁场景 INSERT ... ON DUPLICATE KEY UPDATE
数据库·mysql
VX:Fegn08957 小时前
计算机毕业设计|基于springboot + vue敬老院管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
文刀竹肃7 小时前
DVWA -SQL Injection-通关教程-完结
前端·数据库·sql·安全·网络安全·oracle
算法与双吉汉堡7 小时前
【短链接项目笔记】Day2 用户注册
java·redis·笔记·后端·spring
思成不止于此7 小时前
【MySQL 零基础入门】MySQL 约束精讲(一):基础约束篇
数据库·笔记·sql·学习·mysql
ActionTech8 小时前
SCALE | SQLFlash 在 SQL 优化维度上的表现评估
数据库·sql
老华带你飞8 小时前
建筑材料管理|基于springboot 建筑材料管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习·spring
NaiLuo_459 小时前
MySQL基本查询
数据库·mysql
刺客xs9 小时前
MYSQL数据库------多表查询
数据库·mysql
曹牧9 小时前
Oracle:拼音码
数据库·oracle