程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> mysql與JDBC中文問題的解決方法

mysql與JDBC中文問題的解決方法

編輯:關於JAVA

讓MySQL支持中文,有兩種方法:

1、用JDBC連的時候,URL要使用這樣的形式:

jdbc:MySQL://localhost:3306/test?useUnicode=true&characterEncoding=EUC_CN

這種方法性能可能有一定損失,因為要經過一定的轉換。而且假如是在Tomcat裡面用,又用了DBCP,則該方法無效。(我懷疑是由於DBCP的URL參數裡面其他屬性都是無效的,別的連接屬性只能放在connectionProperties裡面配置,但DBCP的文檔對connectionPropertIEs的配置說得不清不楚)。

2、在my.ini的[mysqld]段下面加上default-character-set=gbk,則java端的URL無需加上useUnicode等參數,也可以正常處理中文。要注意的問題是這種方法如果用的是MySQL-connector-Java-3.0.11-stable-bin.jar驅動,則會出現下面的錯誤:

Error: java.sql.SQLException: Error during query: Unexpected Exception: Java.lang.StringIndexOutOfBoundsException message given: String index out of range: 40

……

使用mysql-connector-java-3.1.2-alpha-bin.jar與MySQL-connector-Java-3.1.3-beta-bin.jar都可以正常工作。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved