【MySQL】java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\xB3' for column

时间:2020-12-02 17:05:15
  • 问题原因:
    输入内容包含特殊字符,MySQL 中的列不支持。

  • 解决方法
    多数是修改 MySQL 的数据库和表结构,CHARSET 改为 utf8mb4,但本人测试还是不能传入 emoji。
    后来在代码中对其进行转码解决的,使用如下依赖:
<dependency>
    <groupId>com.vdurmont</groupId>
    <artifactId>emoji-java</artifactId>
    <version>${version}</version>
</dependency>

EmojiParser.parseToAliases(nick) 进行保存,读取时用 EmojiParser.parseToUnicode(nick) 再转为特殊字符。