叉叉哥
2011-09-27 21:13
浏览 312
已采纳

tomcat连接池和mysql数据库的中文乱码

Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/java101_microblog?useUnicode=true&characterEncoding=UTF-8", "root", "2321456zlq");

[b]这样的方式获取连接,中文是没有乱码问题的~[/b]

但是从连接池中获取的连接如果有中文就会出现乱码:

con = DBConnection.getConnection();

context.xml:
url="jdbc:mysql://localhost:3306/java101_microblog?useUnicode=true&characterEncoding=UTF-8" />

ps = con.prepareStatement("insert into t_user values(null,'s2323','2321456zlq','吴','M','安徽六安安徽六安', '1991-06-06 00:00:00', '806223819@qq.com',0,0)");
ps.executeUpdate();

从数据库中读出的数据没有乱码 但是insert就会有乱码

是什么问题?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • jkxydp 2011-09-27 22:30
    已采纳

    mysql用GBK编码,项目你要用utf8也没关系的,连接数据库的时候用GBK。

    点赞 打赏 评论
  • caizi1288 2011-09-28 10:22

    把所有的编码方式设置为统一的。

    点赞 打赏 评论