我的想法是设计一个bean将所有结果加入Vector用循环控制显示至于存取是基本知识你自己查资料

解决方案 »

  1.   

    用vector很消耗系统资源,一般分页不用vector,一般的方法:
    oracle;用rownum分段查出,速度很快
    sql server:用absolute()指向结果集的某一条数据;再利用总页数,每页显示的纪录数,来计算并指向某一页第一条纪录。
      

  2.   

    vector很消耗系统资源吗,那分页用vector到底是出于什么考虑?结果集一般有一千条记录的基于3表的查询有没必要用呢??
    选择的时候除了结果集的记录数主要考虑哪些因素??
    我现在的查询操作出奇的慢,想优化一下。请帮忙
      

  3.   

    absolute()好象只有jdbc2才支持的,如果你可以用的话,会很方便
      

  4.   

    用Vector的效率不是很高用JDBC2.0的absolute()特性实现会好些
      

  5.   

    DDDuck() 你到底用的什么数据库?
    如果你是oracle数据库的话,用absolute()会报错?sql server没问题?
    Vector效率不太高是因为它太占内存了。
    Vector其实就是数组, 创建特定大小的一个数组,然后假如用光了存储空间,就再创建一个新数组,将所有句柄从旧数组移到新数组。
      

  6.   

    其实还是用SQL实现比较好,这样可以节约资源,而且数据库中查询的速度是相当的快的。
      

  7.   

    我用的ORACLE,我决定不用VECTOR了,谢谢大家的意见,现在的问题是:
    方法一:SELECT出所有记录,然后用RS.ABSOLUTE()定位
    方法二:SELECT出本页要显示的记录集,然后用RS.ABSOLUTE(),但这个SELECT语句很复杂,因为有ORDER BY 排序,所以有三层。
    结果集多大适合用那种方法??
    谢谢解答!!
      

  8.   

    如果是用oracle,最好用VECTOR,因为目前jdbc(是oracle)一般不支持RS.ABSOLUTE()
      

  9.   

    最好是将分页程序封装在javabean中,这样以后你就省事多了。还有我们咨询过北京oracle公司的工程师:oracle不支持RS.ABSOLUTE(),就算用jdbc2.0也不行。所以只有用rownum的方法。速度还不错。
      

  10.   

    没有呀,我用absolute传到服务器上是可以的
    只是本地调试不行