http://developer.java.sun.com/developer/Books/JDBCTutorial/chapter5.html
java.sun.com还有这个类的javadoc

解决方案 »

  1.   

    一般来说,只要ResultSet是打开的,它就会保持一个数据库连接。如果只把结果集保存一个较短的时间,这是比较好的办法。但是,我们如果要较长时间使用这个结果集,就会占用大量的网络资源如果这个结果集有1000条记录,但每页只能显示10行。就需要将此结果集保存一段时间,如果一直打开数据库连接,这是不可接受的。所以,CachedResultSet(不是CacheResultSet)(缓冲结果集)就可解决这一问题。一旦它被填充入结果,就可关闭连接,就象“脱机工作”。当我们改动结果集对象时,它又会连接到数据库,进行更新。
    sun.jdbc.rowset.CachedRowSet类就定义了缓冲存储的结果集:
    public class CachedRowSet extends BaseRowSet implements javax.sql.RowSet,javax.sql.RowSetInternal,java.io.Serializable,java.lang.Cloneable具体使用方法:
    CachedRowSet rowSet=new CachedRowSet();
    rowSet.setCommand("Select * from DB");
    rowSet.setUrl("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Test");
    rowSet.setUsername("sa");
    rowSet.setPassword("123");
    rowSet.execute();
    while(rowSet.next())
    {
            
    }
    (rowSet.execute()是向rowSet对象中填充内容。)所以,关闭(rowSet.close()方法)应在rowSet.execute()以前被调用。
    你要想找到sun.jdbc.rowset.CachedRowSet包,就去java.sun.com下载。(Early Access(先期试用)中)。