mysql存储中文乱码
表现
前端页面,封装到html里的中文可以显示,和后台相关的中文显示都是 ??? 。查看network请求,传参正常。
查看mysql编码,是utf8。再看连接数据库的JDBC设置,也是utf8。
解决
问了同事,把 /etc/mysql/conf.d/mysql.cnf 填充以下内容即可
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
max_allowed_packet=500M
wait_timeout=2880000
interactive_timeout=2880000
character-set-client-handshake=FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION