1. 程式人生 > >解決JDBC操作資料庫出現中文亂碼的問題

解決JDBC操作資料庫出現中文亂碼的問題

通過JDBC操作資料庫表時,如果記錄中有中文,可能會碰到亂碼的問題。主要原因是字元編碼(characterEncoding)不正確,不外乎以下幾個方面:

1、在資料庫伺服器上建立表格時沒有選擇支援中文的編碼方式

2、建立JDBC連線時沒有指明支援中文的編碼方式

建議在建立表格和建立JDBC連線時都採用utf-8編碼,可以完美支援中文。具體方法如下:

1、建立資料庫表時,選擇character與collation時都選utf-8

2、建立JDBC連線時在url中加入characterEncoding=utf-8,以MySQL為例程式碼如下:

Class.forName(“com.mysql.jdbc.Driver”).newInstance();

String url = “jdbc:mysql://localhost:3306/db1?characterEncoding=utf-8”;

String dbUsername = “root”;

String dbPassword = “”;

Connection conn = DriverManager.getConnection(url, dbUsername, dbPassword);