首页 > 编程知识 正文

数据库和页面中文乱码如何解决,javaweb乱码怎么解决

时间:2023-05-03 05:25:53 阅读:37264 作者:505

今天测试了一点功能,用redis做了缓存,启动redis客户端进行了调查,发现得不到想要的中文结果。 虽然在网上寻找相关的解决方案,但是没有一个能完全解决问题,最后自己一点一点地解决了。

1 .出现问题(1)将接口回复数据写入redis,并将密钥设置为“data”

)2)找到redis安装目录中的redis-server.exe,然后双击启动

)3)在redis-server.exe文件的此层地址栏中,键入cmd,打开控制台,键入redis-cli返回车上,然后试着PING连接,发现客户端没有问题

)4)根据缓存的key,输入查询语句get data,尝试查询缓存的数据。 看,可以查数据,但是不会出想要的中文。

2 .问题的解决很明显,前面出现的问题,不是中文乱码的问题(因为连中文痕迹都看不到),而是数据的进制问题。

redis数据二进制问题的解决

要解决数据推进问题,在前面的(3)中,将redis-cli更改为redis-cli --raw并输入即可。 这也是很多网上的解决方案,可以看到这样解决的结果。 是的,解决了数据进制问题。 真的发生了中文乱码的问题。 这个问题实际上不是Redis的问题,而是编码的问题。 所以即使搜索Redis的中文乱码问题,也得不到解决方案。

中文乱码问题解决

这个问题是因为编写java文件时使用的是UTF-8编码格式,而Windows控制台是GBK编码格式,两者不匹配。

查看java文件的编码格式

Windows控制台-显示属性、编码格式

如果两者的代码格式一致,乱码问题就能解决。

还是从前面的(3)开始,cmd打开控制台后,首先输入chcp 65001,将控制台代码格式更改为UTF-8,然后输入redis-cli --raw,之后正常查询,就可以了

更改编码格式

键入redis-cli --raw进行后续查询

总之,Redis中文乱码问题的解决,(1)首先用chcp 65001命令修改控制台的代码格式;(2)用redis-cli --raw命令解决数据推进问题,最后进行查询可以得到正常的结果

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。