日期:2014-05-18  浏览次数:20765 次

为什么我的分页程序特别慢
这是我的分页bean,数据库记录少的时候翻页还可以忍受,记录多了特别慢,现在总记录有3K多条翻页慢的不行要等10几秒,可是第一页出的特别快,用这个分页bean查询的时候也特别快,搞不懂是sql语句的问题还是程序的问题,数据库用的jdbc:odbc,桥接的access
package   leozhzh;
import   java.io.*;
import   java.sql.*;
import   leozhzh.*;
/**
  *每次更改ssql后必须重新设置rowCount,
  *
  *   @leozhzh
  */
        public   class   PageNumber   {
        private   int   rowCount=1,       //总的记录数。
                        pageSize=20,     //每页显示的记录数,默认20。
                        showPage=1;     //设置欲显示的页码数。
        private   FileBean[]   files   =   null;
        private   String   ssql   =   null;
     
       
        public   void   setssql(String   temp){
        ssql   =   temp;
        }
        public   String   getssql(){
        return   ssql;
        }
        public   FileBean[]   getfiles(){
                String   temp   =   null;
                if(showPage!=1&&showPage> 0)//不是第一页
                {
                        temp   =   "select   top   "+pageSize+ "   *   from   税法   where   1=1   "+ssql+
                        "   and   id   not   in   (select   top   "
                        +pageSize*(showPage-1)+
                        "   id   from   税法   where   1=1   "+ssql+ "   order   by   发布时间   desc,id)   order   by   发布时间   desc,id   ";
                }
              else//第一页
              {
                      temp   =     "select   top   "+pageSize+ "   *   from   税法   where   1=1   "+ssql+ "   order   by   发布时间   desc,id   ";
              }
               
                files   =   new   FileBean[pageSize];//初始化files
               
                try{
                        DbConn   conn   =   new   DbConn();
                &n