码迷,mamicode.com
首页 > 数据库 > 详细

MySQL乱码问题

时间:2017-01-06 12:07:07      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:etc   中文   one   user   manage   insert   exec   exe   drive   

 
JSP的request 默认为ISO8859_1,所以在处理中文的时候,
  要显示中文的话,必须转成GBK的,如下
  String str=new String(request.getParameter("name").getBytes("ISO8859-1"),"GBK");
  out.println(str);
  这样就可以显示中文了
  MYSQL操作时的中文问题:
  这个要看MySQL的默认编码了,一般不调整的话为latin1其实和ISO8859_1一样,所以操作的时候要处理
  和他一致,不然就会乱码的
  1.插入中文:
  String sql2="INSERT INTO test (name) VALUES(‘"+request.getParameter("name")+"‘)";
  stmt.executeUpdate(sql2);
  不用编码就可以插入了
  2.显示插入的中文:
  因为存入的是latin,所以显示的时候就要GBK一下
  String x=new String((rs.getString("title")).getBytes("ISO8859_1"),"GBK");
  out.println(x);
  3.设定存储编码:
  当然在MySQL为latin1编码时,也可以存的时候用GBK了
  Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/jsp?
  useUnicode=true&characterEncoding=GBK","root","");
  str1="中文";
  String sql2="INSERT INTO test (name) VALUES(‘"+str1+"‘)";
  这样也可以很成功的插入
 
 
 
http://user.qzone.qq.com/372806800/blog/1336199262

 

MySQL乱码问题

标签:etc   中文   one   user   manage   insert   exec   exe   drive   

原文地址:http://www.cnblogs.com/amwuau/p/6255508.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!