- 解决方法一:(最重要的一种方法)
你看下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" ); |