问题出现原因

Emoji表情符号为4个字节的字符,而 utf8 字符集只支持1-3个字节的字符,导致无法写入数据库。

环境

  • 语言
    • java
  • 数据库连接池
    • druid
  • 数据库
    • mysql
  • 持久性框架
    • mybatis

数据库修改

  • 修改数据库字符集character-set-server=utf8mb4 重启数据库生效

代码修改

  • druid 配置文件修改
1
2
<property name="connectionInitSqls" value="set names utf8mb4;"/>

本文地址 https://blog.coder4j.cn/posts/b2644b76/