刚开始数据库的编码是utf8格式的。保存的时候出现错误。
```
Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x8A\xF0\x9F...' for column 'nick_name' at row 1
```
原因分析:
英文字符占1字节,8bit.
中文字符占3字节,24bit.
emoji表情占4字节,32bit.
由于utf8最多3字节,所以报错。
解决方法:/etc文件夹里找到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'
重启数据库:
service mysqld stop
service mysqld start
参考文章:
https://www.cnblogs.com/silentmuh/p/11082622.html
https://www.cnblogs.com/ming-blogs/p/10288763.html
https://www.cnblogs.com/wujf-myblog/p/9570870.html
https://blog.csdn.net/u014609263/article/details/89631307