最近作購物系統,資料庫用mysql,讀取資料總是亂碼,通過查找資料總結,終于得到解決,現将分享如下:
環境:xp sp2,
資料庫:mysql4 j
dbc驅動:mysql-connector-java-3.1.12-bin.jar
jdk:jdk1.5
首先修改mysql的my.ini檔案
在其中的[mysqld]下添加default-character-set=gb2312
注意大小寫,設定不對mysql将無法啟動
在java中連接配接資料庫的時設定如下屬性:
Connection conn = DriverManager.getConnection("jdbc:mysql://ip位址/資料庫名?user=使用者名&password=使用者密碼&userUnicode=true&characterEncoding=iso-8859-1 ");
例如:我得設定為:conn = DriverManager.getConnection("jdbc:mysql://localhost/shop?user=sa&password=&userUnicode=true&characterEncoding=iso-8859-1 ");
在jsp中設定page屬性的 pageEncoding="gb2312" 即可
這樣讀出的資料就能識别中文,不會出現亂碼