java utf-8编码连接utf-8 mysql数据库,解决中文乱码

下载mysql-connector-java-5.1.12-bin.jar 放在目录D:/Sun/SDK/jdk/lib 下面

编写代码

try{ Class.forName("com.mysql.jdbc.Driver"); String userName="root"; String passWd=""; String url="jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=UTF-8"; conn=DriverManager.getConnection (url, userName, passWd); Statement stmt=conn.createStatement(); stmt.execute("insert into `matest` values('20079999','胡锦涛')"); }catch(Exception e) { //e.printStackTrace(); System.out.println(e.getMessage()); }

这只是部分代码,完整代码网上太多了,需要注意的是我们指明用utf-8方式连接数据库useUnicode=true&characterEncoding=UTF-8"

设置mysql的编码为utf-8,注意要将数据库,数据表的编码均设置为utf-8

注意将java源文件的文件格式转为utf-8,注意在windows下的utf-8在文件的开头有几个字符,会导致编译不过,所以我们要清除那几个字符,可以利用notepad++这个软件,它有个文件转换的功能,转为utf-8 without BOM ,这样就会去除那几个讨厌的字符了

编译时添加-encoding utf-8这个选项,运行吧,中文没有乱码,至少我这是!

你可能感兴趣的:(java,mysql,exception,数据库,String,insert)