問題:當使用JDBC連接MySQL數據庫時,插入中文顯示亂碼
解決方法:在連接代碼中插入以下代碼
1
|
String url = "jdbc:mysql://localhost:3306/你的數據庫名?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false" ; |
代碼解讀
1
|
useUnicode= true &characterEncoding=utf8 |
以上代碼有兩個作用:
1.存數據時:
數據庫在存放項目數據的時候會先用UTF-8格式將數據解碼成字節碼,然后再將解碼后的字節碼重新使用GBK編碼存放到數據庫中。
2.取數據時:
在從數據庫中取數據的時候,數據庫會先將數據庫中的數據按GBK格式解碼成字節碼,然后再將解碼后的字節碼重新按UTF-8格式編碼數據,最后再將數據返回給客戶端。
1
|
serverTimezone=UTC |
以上代碼是為了指定時區,加上這段代碼后就不會報時區錯誤了。
1
|
useSSL= false |
高版本的MySQL需指明是否進行SSL連接。
到此這篇關于Idea連接MySQL數據庫出現中文亂碼的問題的文章就介紹到這了,更多相關Idea連接MySQL數據庫亂碼內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://blog.csdn.net/qq_45504261/article/details/115613953