to: 夏天要下雨你设置了
jdbc:mysql://localhost/myproject?useUnicode=true&characterEnCoding=GBK下面rs时候就不要转码了。另外,日文汉字你要用UTF-8编码的,不能用GBK。

解决方案 »

  1.   

    数据库用UTF-8编码,在连接数据库时的characterEnCoding也应设为UTF-8,你干嘛设成GBK。
      

  2.   

    你的这个在设计上还存在问题,数据库中的表映射成对象,可以用List,不要用二维数组。建一个POJO类,比如说是 JapaneseDic,含有:id, word, type, meaning,并加上set/get方法。
    rs赋值时改为while(rs.next()) { 
        JapaneseDic dic = new JapaneseDic();
        dic.setId(rs.getString(1));
        dic.setWord(rs.getString(2));
        dic.setType(rs.getString(3));
        dic.setMeaning(rs.getString(4));
        list.add(dic);
    }PS:Connection, Statement, ResultSet都没有close()掉。
      

  3.   

    to:火龙果
    按照你的方式,有个小小的错误:就是这里: List.add(dic);错误原因:无法从静态上下文中引用非静态方法add(E).
    你看看怎么修改呢?
    回复楼上其他朋友:你们说的方法我早试过了,没用.全部是utf8.全部是乱吗,连日文都显示不了.
    所以看看火龙果的方法是不是可以.
       
      

  4.   

     List.add(dic);错误原因:无法从静态上下文中引用非静态方法add(E). 
    这个错误解决了.要先这样  List list=new ArrayList();
    好象不能用List.
    public int getRowCount() {
            
            return this.content.length;     //DataTable1.java:27
        }
    否则:Exception in thread "main" java.lang.NullPointerException
            at org.netbeans.swing.轻松背日语.DataTable1.getRowCount(DataTable1.java:27)
    .所以上面那个繁体字返回不了的问题仍然没有解决.
    请大家继续想办法吧