带图片的微信用户名称存mysql问题总结

先直接说两种解决方法,第一种比较烦(其实也没有很烦),第二种简单

1.后台对 用户名这个字段进行 加码 存入到mysql 取出来 再解码呈现

我的项目中 是 nickName 字段进行存储微信头像数据的

存数据的时候 进行 编码 将二进制数据编码为可写的字符型数据

String enNickName = Base64.getEncoder().encodeToString(nickName.getBytes("UTF-8"));

从数据库取出来的时候,是加码之后的数据,所以要 解码

String deNickName = new String(Base64.getDecoder().decode(nickName), "UTF-8");

将此时的deNickName返回给前端,就会正常显示啦。

2.直接对mysql的编码进行修改

第一坑:
把数据库中 nick_name 字段的字符集 改为 utf-8mb4
测试之后发现没用!没用!没用!

第二坑:
把数据库中表 的字符集改为 utf-8mb4
也没用!没用!没用!
把此数据库的字符集改为 utf-8mb4
都没用!没用!没用!

解决:
需要修改 my.cnf 这个文件里面的字符集设置
这个文件在linux 下一般在 /etc/my.cnf

vi /etc/my.cnf

修改[client] [mysqld] 下面的字符为utf-8mb4

my.cnf.png

修改红线标的就好了

返回主目录
cd ~

重启mysql
service mysqld restart

测试发现完成咯!

app界面.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • show charcater set; show variables like '%character%'; 1....
    SkTj阅读 1,548评论 0 2
  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,073评论 2 89
  • MySQL数据库 课程目标:1.如何使用MySQL数据库,主要是讲解基本的语法2.如何设计数据库? 第一章 数据库...
    我爱开发阅读 1,335评论 1 4
  • 诺大的狗京,能容不下一个安静的狗窝吗。 原本老黑是狗京附近看家的一只狗,平日里勤勤恳恳,老实巴交的工作,窝外有个影...
    齐天大圣代阅读 389评论 3 3
  • 自己是个在感情里极其简单的人。我就希望我对他好的人,他也能拿我当做最好的朋友。我不知道是不是我太敏感,可我的确时常...
    红泥小火炉Celia阅读 430评论 1 0