参考以下两篇:
http://www.chinaunix.net/jh/26/172647.html
http://webasp.net/article/17/16580.htm

解决方案 »

  1.   

    我试了下,这样是可以的:
     ...连接部分略
      String x;
      while (rs.next()){ 
         for(int j=1; j<=rs.getMetaData().getColumnCount(); j++){
          x=new String((rs.getString(j)).getBytes("ISO8859_1"),"GBK"); 
          System.out.print( x+"\t"); 
         } 
      

  2.   

    1.先转码,不行转第二步
    2.重下mysql的连接驱动
      

  3.   

    你用的什么驱动程序和驱动/
    我建议你下最新的驱动,用com.mysql.jdbc.Driver
    我以前也老出现乱码,但是用这个后,不需要转码都显示正常。
      

  4.   

    用mysql4.1 以上的版本,并且建数据库的时候,字体选择 utf-8,Connection myConn = DriverManager.getConnection("jdbc:mysql://localhost:3309/taket?user=abc&password=abc&useUnicode=true&characterEncoding=utf-8");jsp页面<%@page contentType="text/html; charset=UTF-8"%>