问题发生原因:在APP过程中,由于用户评论会评论emoji表情,导致项目保存到mysql报错。
UTF-8编码有可能是两个、三个、四个字节。Emoji表情是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。
Cause: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x90\x9DBZ...' for column 'comment' at row 1
这时候我们将数据库中当前表的存储方式进行修改将Mysql的编码从utf8转换成utf8mb4。
或在mysql.imi中配置文件修改character_set_server = utf8mb4。