解决方法一:(最重要的一种方法)

你看下my.ini,有无

[MySQL]

default-character-set=utf8

[client]

default-character-set=utf8

[mysqld]

default-character-set=utf8

然后建立表时,也要用(比如)

DROP   TABLE   IF   EXISTS   `Company`;

CREATE   TABLE   IF   NOT   EXISTS   `Company`

(

`Cname`   VARCHAR(10)   NOT   NULL,

`Caddr`   VARCHAR(100),

`Ctel`     VARCHAR(16)

)ENGINE=InnoDB   DEFAULT   CHARSET=UTF8;

这样就没问题。

如果是jsp要声明:

contentType="text/html;charset=gb2312"

解决方法二:

连接mysql时(无论在从mysql读还是取数据的情况),指定使用的编码方式为utf-8,具体代码如下

//装载mysql-jdbc驱动

Class.forName("com.mysql.jdbc.Driver").newInstance();

//连接数据库

Connection sqlCon = DriverManager.getConnection( "jdbc:mysql://localhost:3306/test?                         user=root&password=1&useUnicode=true&characterEncoding=utf-8" );

解决方法三:

如果方法一不行那么在方法一的基础上对读入的字符串进行强制编码方式转换。

代码示例如下:

String name = rst.getString("name");

name= new String(name.getBytes("ISO-8859-1"),"utf-8");

注:代码也可以为:String name =new String( rst.getString("name").getBytes("ISO-8859-1"),"utf-8"));其中rst为返回的resultset,ISO-8859-1为mysql默认的编码方式,代码的目的是把以ISO-8859-1的编码转换为gb2312编码方式,这样强制转换,可以解决一部分问题,如果结合方法一,应该可以解决中文乱码问题。

解决方法四:

这个方法在有些文章里是首推的,我首先也是试了这个方法,但是好像不行。这里还是说一下,不知是不是我操作错误。还是先贴原文吧:

"如果数据库中有中文的话而mysql默认的语言不是中文时要在配置文件C:winntmy.ini 中的 [mysqld] 里添加一行:

default-character-set=utf-8

然后重起mysql

方法五:在tomcat conf  里面的web.xml里面更改:

UTFEncoding

com.founder.chenph.Util.EncodingFilter_UTF8

encoding

UTF-8

UTFEncoding

*.jsp

UTFEncoding

*.do

java mysql乱码_41、java与mysql乱码的问题相关推荐

  1. mysql java 中文乱码_mysql +java中文乱码

    第二种情况,mysql不能插入中文,而且java查询.更新数据库出现中文乱码 参考: http://developer.51cto.com/art/200906/130425.htm 1, 设置 My ...

  2. centos6.4安装java,CentOS6.4下YUM安装MySQL和JDK和Tomcat

    1.检查可用的安装包 1.1.检查java安装包yum search java 显示如下: 1.2.tomcat安装包yum search tomcat 显示如下: 1.3.检查mysql安装包yum ...

  3. 【数据库】MySQL乱码解决(存入数据乱码和查询输出乱码)

    一般在安装和设置MySQL的时候会选择将其编码格式设置为UTF8,以保证数据库在不用语言环境下的适应性.但是一般在Win下使用的时候,本机编码集却是GBK或者GB2312.这样在Win下的GBK编码输 ...

  4. mysql 导出中文乱码_sqoop导出到mysql中文乱码问题总结、utf8、gbk

    今天使用sqoop1.4.5版本的(hadoop使用cdh5.4)因为乱码问题很是头痛半天.下面进行一一总结 命令: [root@sdzn-cdh01 etc]# sqoop export --con ...

  5. mysql 5.0 乱码_MySQL 5.0.16 乱码问题处理办法

    MySQL 5.0.16 乱码问题处理办法 1 设置phpMyAdmin Language:Chinese simplified (zh-utf-8) MySQL 字符集:UTF-8 Unicode ...

  6. mysql中值换行显示为乱码_MySQL数据移植中的乱码问题

    mysql移植含有中文的数据时,很容易出现乱码问题.很多是在从mysql4.x向mysql5.x移植的时候出现.mysql的缺省字符集是latin1,在使用mysql4.x的时候,很多人都是用的lat ...

  7. MySQL之数据库基字符集,中文乱码,大小写敏感,Packet for query is too large

    目录 1 数据库字符集选择 1.1 utf8和utfmb4区别 1.2 排序检验规则 1.2.1 COLLATE介绍 1.2.2 常见排序示例 1.2.3 创建表时使用字符集和校验规则 1.2.4 在 ...

  8. mysql 使用java代码进行操作系统_【MySQL 05】使用Java对MySQL进行操作(创建数据库)...

    JDBC连接数据库: 1.加载JDBC驱动程序 2.提供JDBC连接的URL 3.创建数据库的连接 4.创建一个Statement 5.执行SQL语句 6.处理结果 7.关闭JDBC对象 1.加载JD ...

  9. mysql java驱动 ibm_Java 通过JDBC连接Mysql数据库

    JDBC(java Data Base Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

最新文章

  1. Failure [INSTALL_FAILED_ALREADY_EXISTS
  2. express的app.js的详细配置说明
  3. 2021-10-11 程序人生 -感想随笔
  4. webpack ,gulp
  5. VTK:Utilities之SortDataArray
  6. Tomcat内部结构及工作原理学习
  7. 这些工具类用起来真的很”香“
  8. Java设计模式:命令模式
  9. Firemonkey的旁门左道[六]
  10. “我花了 5 年时间编写自己的操作系统!”
  11. 隔离是否有效?北大面向新冠疫情的数据可视化分析与模拟预测
  12. 为什么软件开发周期总是预估的2-3倍?
  13. SQL Sever — 表的操作
  14. 关于数据分析师的4个你问我答,你曾有过这些困扰吗?
  15. Hibernate (load PK get and list PK iterator )
  16. 树形结构的处理——组合模式(一)
  17. 海外问卷调查,招募合伙人
  18. js统计字符串中大写字母与小写字母的总个数
  19. 【翻译】Style Transfer by Relaxed Optimal Transport and Self-Similarity
  20. 语音情感识别中的音频检测算法学习

热门文章

  1. 决战9小时,产品上线的危机时刻
  2. debian9 没有ipv4
  3. libxml2如何解析xml格式的字符串
  4. 算法的封装与切换——策略模式
  5. 浅谈一个缓存小实践,另外还有更多案例,欢迎关注~
  6. 使用eclipse开发javaweb注册功能
  7. JDK11的新特性:HTTP API和reactive streams
  8. reactive stream协议详解
  9. Leet Code OJ 223. Rectangle Area [Difficulty: Easy]
  10. git gui怎么拉取项目代码_Git可视化极简易教程 —— Git GUI使用方法