在获取微信昵称的时候报错
问题的原因:
mysql数据库中utf-8编码默认是3个字节,但是表情是4个字节
解决办法:
修改mysql的配置文件添加以下内容(注:windows下的为my.ini(linux下的为my.cnf)
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
character-set-client-handshake=FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
重启mysql
执行查询语句将表也修改成utf8mb4格式(注:TABLE_NAME替换成表名)
ALTER TABLE TABLE_NAME CONVERT TO CHARACTER SET utf8mb4;
将数据库中对应的字段,改为utf8mb4_general_ci
修改项目中的连接数据库的url,将characterEncoding=utf-8去掉