分頁語法


Mysql

select * from table limit (start-1)*limit,limit;

其中start是頁碼,limit是每頁顯示的條數。limit是一個變量。java

int pages=0;            //待顯示頁面
    int count=0;            //總條數
    int totalpages=0;        //總頁數
    int limit=10;            //每頁顯示記錄條數    
    //計算記錄總數的第二種辦法:使用mysql的彙集函數count(*)
    ResultSet sqlRst = sqlStmt.executeQuery("select count(*) from user");
    if(sqlRst.next()){
        count = sqlRst.getInt(1);//結果爲count(*)表,只有一列。這裏經過列的下標索引(1)來獲取值
    }    
    //由記錄總數除以每頁記錄數得出總頁數
    totalpages = (int)Math.ceil(count/(limit*1.0));
    //獲取跳頁時傳進來的當前頁面參數
    String strPage = request.getParameter("pages");
    //判斷當前頁面參數的合法性並處理非法頁號(爲空則顯示第一頁,小於0則顯示第一頁,大於總頁數則顯示最後一頁)
    if (strPage == null) { 
        pages = 1;
    } else {
        try{
            pages = java.lang.Integer.parseInt(strPage);
        }catch(Exception e){
            pages = 1;
        }
        
        if (pages < 1){
            pages = 1;
        }
        
        if (pages > totalpages){
            pages = totalpages;
        }                            
    }
    //由(pages-1)*limit算出當前頁面第一條記錄,由limit查詢limit條記錄。則得出當前頁面的記錄
    sqlRst = sqlStmt.executeQuery("select * from user order by user_id limit " + (pages - 1) * limit + "," + limit);
    while (sqlRst.next()){//遍歷顯示}
相關文章
相關標籤/搜索