在Java開發中,我們經常會遇到讀取MySQL數據庫的需求。但是有的時候,當我們從數據庫讀取數據時,卻發現數據出現了亂碼的情況,這是因為MySQL中存儲的是utf8編碼的字符串,而Java默認使用的是ISO-8859-1編碼,因此需要進行一些編碼轉換。
下面就是一個在Java中讀取MySQL數據庫的示例代碼:
//創建連接 Connection conn = DriverManager.getConnection(url, user, password); //執行查詢 Statement statement = conn.createStatement(); ResultSet resultSet = statement.executeQuery("SELECT * FROM table_name"); //處理結果集 while (resultSet.next()) { String str1 = resultSet.getString("col1"); String str2 = resultSet.getString("col2"); //進行編碼轉換 String newStr1 = new String(str1.getBytes("ISO-8859-1"), "UTF-8"); String newStr2 = new String(str2.getBytes("ISO-8859-1"), "UTF-8"); System.out.println(newStr1 + " " + newStr2); } //釋放資源 resultSet.close(); statement.close(); conn.close();
在這段代碼中,我們使用了getBytes方法將字符串從ISO-8859-1編碼轉換為字節數組,再使用String構造方法將字節數組轉換為UTF-8編碼的字符串。
以上就是解決Java讀取MySQL亂碼的方法,希望對大家有所幫助。
上一篇java 設置mysql
下一篇mysql 2030