首頁 >Java >Java入門 >java中向mysql資料庫插入中文資料出現亂碼

java中向mysql資料庫插入中文資料出現亂碼

王林
王林原創
2019-11-25 10:32:004870瀏覽

java中向mysql資料庫插入中文資料出現亂碼

1、資料庫插入中文亂碼首先需要排除的問題是,MySQL的預設字元集和對應database的字元集是什麼

通常為了以後的相容性,建議將整個MySQL的預設字元集都設定成utf-8。可以使用以下命令查看預設字元集:

mysql> SHOW VARIABLES LIKE 'character%';

建議對於新裝的MySQL直接將整個所有的預設字元集都設定成utf-8,對於已經有很多database的可以單獨設定特定的資料庫的字符集。

學習影片推薦:java零基礎入門

關於字元集的一些設定方法:

修改特定資料庫的字元集

mysql>use mydb
mysql>alter database mydb character set utf-8;

建立資料庫指定資料庫的字元集

mysql>create database mydb character set utf-8;

2、指定JDBC在傳輸的時候使用utf-8編碼

這樣整個程式處理、傳輸、資料庫儲存都統一了編碼格式,因此中文就不會亂碼了。所以Java程式JDBC對應的資料庫URL應該寫成如下樣式:

 // 驱动程序名
    private static String driver = "com.mysql.jdbc.Driver";
    // URL指向要访问的数据库名
    private static String url = "jdbc:mysql://localhost:3306/watermarking?useUnicode=true&characterEncoding=utf-8";
    // MySQL配置时的用户名
    private static String user = "root";
    // MySQL配置时的密码
    private static String password = "root";

URL中「?」後面的就是指定使用UTF-8進行字元編碼

##更多java相關文章請追蹤:

java程式入門

以上是java中向mysql資料庫插入中文資料出現亂碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn