java后台接收获取微信昵称,昵称包含小图标保存到数据库报错

优雅de程序员 2017-09-25 02:50:48


上面是保存到数据库,数据库直接出了异常。
然后我按照网上说的吧数据库字段修改为 utf8mb4

下面是修改数据库编码后



然后获取带表情的昵称保存到数据库还是会出现同样的错误

...全文
5456 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
优雅de程序员 2020-09-24
  • 打赏
  • 举报
回复
这也是一种解决办法。
末流码农 2020-09-24
  • 打赏
  • 举报
回复
几年前有同样需求时候 大佬不让我改线上数据库编码 我是在github上面找了个工具包 存库之前通过工具包把emoji表情转成特殊字符串存库 然后取出时候再转换一遍
tianfang 2020-09-20
  • 打赏
  • 举报
回复
引用 1 楼 java_yinxuan 的回复:
你有把保存昵称的那个字段的编码改成utf8mb4吗?
此为正解
  • 打赏
  • 举报
回复
引用 5 楼 qq_43396436 的回复:
不知道你要存的是什么,这个是我获取公众号粉丝的信息存到数据库 头像是直接存路径 如下:
老板你这个怎么设置的。我遇到了这个问题
【天运子】 2020-03-24
  • 打赏
  • 举报
回复
如果文件很小,可以转成base64存到数据库,建议还是数据库存文件存储的相对路径,真正的文件存储在硬盘上
PoemOfficer 2020-03-24
  • 打赏
  • 举报
回复
不知道你要存的是什么,这个是我获取公众号粉丝的信息存到数据库 头像是直接存路径 如下:
My丨Dyy 2017-09-25
  • 打赏
  • 举报
回复
这种情况下出错了,。那么就不要直接把图标保存到数据库,应该在保存之前进行base64转码, new String(Base64.getEncoder().encode(str.getBytes()), "UTF-8"); 然后取出来的时候进行解码。。这样就可以防止数据库报错
java_yinxuan 2017-09-25
  • 打赏
  • 举报
回复
你有把保存昵称的那个字段的编码改成utf8mb4吗?

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧