1 JVM 自动加载的
2 看看 JDK ,不需要调用rs.last,就可以取得 结果集的结果数量
3 我觉得是: 一执行查询就把整个查询的结果
      全部都扔到到了客户端的resultset中

解决方案 »

  1.   

    一般不是采用传全部结果集到客户端,而是传一定量的
    采用setFetchSize和getFetchSize可以得到相关的情况
    不过,,,,不同厂商对ResultSet接口实现不一定一样
      

  2.   

    copyright(笨蛋白痴神经质)  同意你的说法。
    但是,mysql 的jdbc 就忽略了setFetchSize()的做法,一次就全载入了。所以选个好的DB对性能也是很重要的。如使用resultset取数据显然不是怎么科学的。因为你必须要在statement,Connection关闭之前取得所有的resultset。因此,一般的做法都是在遍例resultset的时候,讲结果存入ArrayList,Vector等Collection 中去。,
      

  3.   

    1.你在程序中指定Class.forName(...),jvm回加载你指定的驱动,前提要有驱动包
    2。不能。getrow()是得到当前的行位置。
    3。不是,同意totodo的看法。
      大量数据查询不是一个明知的做法,一般回有所控制。就算你一次查出个几万条,客户端也回受不了的。