⑴ java的分頁
this.sqlStr=sqlStr+"limit"+irows+","+pageSize;
這句是:sqlStr 是用來存放你的SQL語句的變數;整個的意思就是:
比如:sqlStr="select * from user";
this.sqlStr="select * from user limit 9,4
就是查詢表user 數據從第九行開始,向後查4行。每頁顯示4行數據。
String[] sData = new String[6]; 定義一個大小為6的字元串數組,
for(int j=0;j<rsmd.getColumnCount();j++){*******************getColumnCount()什麼意思有啥用????
sData[j]=rs.getString(j+1);
}
這句是循環遍歷,將資料庫的數據循環遍歷的賦給字元串數組。
親,希望我的回答對你有幫助。
⑵ 關於java 分頁取出數據所在頁的頁數。
給你提供兩種思路:
1.你要取第二頁,也就就是6-10,你可以先用top 10 ,取出前10個,然後desc倒序,再取出top 5
再倒序,這樣就取出6-10個;
比如:select top 5 from (select top 10 * from table_1 desc) t desc
2.sqlserver 和oracle都有row_number() 這樣的列,就是你取出的結果集給你多加一個列,你按row_number()去結果集也行。
比如:with table001 as (select row_number() over (order by Qid) as row_number , * from ( "+sql+") k) select * from table001 where row_number>= ? and row_number<= ? order by Qid
這個是我之前項目中的sql語句。你參考一下,作用就是 取( "+sql+") 中的sql 中的兩個?之間的數據
---------------------------
你要取頁數,可以用第二個思路,pk不一定是連續,可能有些數據給刪除;
但是查詢出來的結果集加上的row_number(),肯定是連續,
row_number%5==0;page = row_number/5
row_number%5!=0;page = row_number/5+1
⑶ java 中查詢資料庫後的分頁咋做,管理系統的查詢顯示方面,上一頁,下一頁的實現
這個不難,起一個分頁組件.(裡面有拿到下一頁,拿到上一頁的方法)然後在專jsp頁面裡面屬,當點上一頁時,把當前頁,發過伺服器那邊,伺服器再去資料庫查找指定范圍的數據,不同資料庫有不同的分布方法。然後拿到一定數量的集合,再由伺服器發回到jsp頁面,再顯示就行了。。。
大概原理就這是樣,不懂的繼續問。。。