11 回答

TA貢獻25條經驗 獲得超45個贊
如果是頁面傳值過來的話,需要請求的編碼跟接收和數據庫的編碼一致。
如果你debug發現傳到后臺還沒接收的時候就是亂碼的話
需要修改tomcat配置文件,其他發布服務器類似。
建議忘掉修改my.ini方法 ?實際項目數據庫編碼不會有問題的。
全部沒問題的話,是極小的幾率才會出現亂碼,比如說,手機端未設置編碼直接傳值等

TA貢獻2條經驗 獲得超1個贊
首先查看當前數據庫編碼:
mysql> use xxx
mysql> show variables like 'character_set_database';
+------------------------+--------+
| Variable_name????????? | Value? |
+------------------------+--------+
| character_set_database | latin1 |
+------------------------+--------+
上面,我們先切換到xxx數據庫下面來,然后使用SQL語句:show variables like 'character_set_database'; 來查看了xxx數據庫的編碼。查詢得到的結果是latin1編碼。
下面,修改xxx數據庫的編碼,把它修改為你要的編碼 utf8 ?(注意不是utf-8)?;蛟S你的是gbk gb2312 。
mysql> alter database xxx CHARACTER SET utf8;

TA貢獻11條經驗 獲得超1個贊
private String url = "jdbc:mysql://localhost:3306/dbname?useUnicode=true&charactorEncoding=utf-8";
在你jdbc url后面加上?useUnicode=true&charactorEncoding=utf-8 這段,用的什么編碼,尾部就改成什么編碼,還有你的項目編碼最好也相同,新建數據庫時也指定charset=utf-8,就不會亂碼了
添加回答
舉報