怎么有 java.lang.ClassCastException

解决方案 »

  1.   

    RowSet继承了ResultSet
    所以向上强制转换即(ResultSet)rowset是安全的
    而当向下强制转换即(RowSet)ResultSet是不安全的
    如果失败,就会抛出java.lang.ClassCastException这个异常!!!
      

  2.   

    那有没有办法,让ResultSet传入以RowSet为参数的函数。
      

  3.   

    在jdbc中,如何得到一个RowSet,里面为什么没有getConnection();
      

  4.   

    应该说RowSet接口扩展了ResultSet接口,它具有ResultSet所有的方法
    使用RowSet是使用javax.sql.RowSet接口
    不过使用时应该具体化RowSet接口
    使用下面3个
    CachedRowSet
    JdbcRowSet
    WebRowSet
    建议找本书看看!!!
      

  5.   

    首先到Sun公司网站下载扩展类库,忘了网址了,不过我这儿有,如果不想麻烦找的化,我可以发给你。
      public RowSet queryRowSet(String sql) {
        RowSet rowSet = null; 
     
        try {
          Statement stmt = conn.createStatement();
          ResultSet rs = stmt.executeQuery(sql); 
          rowSet = new CachedRowSet();
          rowSet.populate(rs);
          rs.close();
          stmt.close();      
        }
        catch (SQLException ex) {
          log(ex, "Error occurs in queryRowSet");
          rowSet = null;
        }
        catch(NullPointException ex){
        log(ex, "Error occurs in queryRowSet");
        rowSet = null;
        }
        finally{
        return rowSet;
       } 
      }