Springboot(八):emoji表情保存到mysql出錯的解決辦法


                        emoji表情保存到mysql出錯的解決辦法

今天,在前端的說明信息中輸入emoji表情的時候,插入數據庫會報錯

百度了一下,是因為mysql數據庫的字符編碼集不正確,utf8無法存入表情字符,只能將字符集改為utf8mb4才可以,然后我們執行sql去改變數據庫

使用

SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';

 輸出

character_set_client utf8
character_set_connection    utf8
character_set_database  utf8
character_set_results utf8

然后我們執行sql:

set names utf8mb4;

再查詢一次,輸出:

character_set_client    utf8mb4
character_set_connection    utf8mb4
character_set_database  utf8mb4
character_set_results   utf8mb4

然后我們執行插入表情的sql,成功了!

程序解決方案 

但是在程序中還是會有問題,看來我們需要改一些代碼了

我們知道執行  set names utf8mb4達到效果,接下來我們也去在程序中去執行該sql

那我們就需要在數據庫連接信息中加入該數據

然后,我們在mybatis的啟動類中在datasource中加入該數據,賦給initConnectionSqls屬性

然后,我們重新啟動項目,訪問后台,發現請求成功了!

該問題已經成功解決!!!

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM