newStr  =  new  String(str.getBytes("gb2312"),"ISO8859_1"); 
->
newStr  =  new  String(str.getBytes("ISO8859_1"),"gb2312"); 

解决方案 »

  1.   

    你的mysql的字符集是中文吗?
      

  2.   

    连接数据库时采用这种方式,看看行吗?
      Class.forName("com.mysql.jdbc.Driver");
    DriverManager.registerDriver(new com.mysql.jdbc.Driver());String dbUrl =  "jdbc:mysql://localhost:3306/BookDB?useUnicode=true&characterEncoding=GB2312";String dbUser="用户名";
    String dbPwd="密码";
    con = java.sql.DriverManager.getConnection(dbUrl,dbUser,dbPwd);