MySQL 数据库 JDBC 中文乱码问题
url="jdbc:mysql://localhost:3306/yhcmusic?useUnicode=true&characterEncoding=UTF-8" 源文看这里 http://www.java2000.net/viewthread.jsp?tid=27

解决方案 »

  1.   

    写一个转码的程序.
     public static String deCode(String str) {
         if (str == null) {
         return "";
         }
            if (str.equals("") || str.equals(" ")) {
                return "";
            } else {
                byte temp[];
                try {
                    temp = str.getBytes("ISO-8859-1");
                    str = new String(temp, "GBK");
                } catch (Exception e) {
                    System.err.println("convert error: " + e);
                }
                return str;
            }
    把从数据库中取出的中文字段都通过这个方法转一码.在显示看看.
      

  2.   

    谢谢java2000_net对我的问题的关注,但是我的struts-config.xml中正是像你的那样配置的呀。
      

  3.   

    没用过滤器,关键是在Dos命令下连接数据库然后添加的纪录是乱码,用jsp表单提交的数据保存到数据库里不是乱码。是不是跟我的操作系统有关哦??/我用的英文版的操作系统
      

  4.   

    换同事的中文操作系统看看。 远程连mysql
      

  5.   

    看看你的mqsql的字符集 可能是那里的问题。
      

  6.   

    我的mysql的字符集是utf-8的,和页面的是一致的
      

  7.   

    建议你先把MySQL的字符集改成GB2312或GBK然后在从控制台加条数据,看是否是中文的!try...
      

  8.   

    我记得在连接mysql的时候可以指定一个字符集的吧..页面的编码就用GBK或者gb2312哦
      

  9.   

    尽管到底还是不知道是什么原因,可能是英文操作系统的问题,在java2000_net的机子上运行就没任何中文乱码的问题,但是这一原因也没有确凿的证据,但还是感谢各位的参与,满意结贴!