科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道mysql与JDBC中文问题的解决方法

mysql与JDBC中文问题的解决方法

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

  要让mysql支持中文,有两种方法:   1、用JDBC连的时候,URL要使用这样的形式:   jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=EUC_CN  

作者:中国IT实验室 来源:中国IT实验室 2007年9月9日

关键字: JDBC/JDO 编程 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都可以正常工作。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章