這段時間因為專案需要,要做乙個分頁的功能,具體來說就是希望從資料庫每次只取一部分結果,這樣每頁就顯示那些結果,實現原理很簡單,就是建立乙個pageutil類,裡面放當前訪問的頁數(這個是從客戶瀏覽器傳到後台的資料,所以你的分頁需要用它來定位記錄的條目)和每一頁顯示的記錄行數。然後通過分頁計算就可以得出下列資料。
分頁物件**:
public class pageutil
public int getpageno()
public int getsta()
public void setsta(int sta)
//對頁號的處理
public void setpageno(int pageno) else if(this.totalpage!=0&&pageno>this.totalpage)else
}public int getpagesize()
//對頁面大小的處理
public void setpagesize(int pagesize) else
}public int gettotalsize()
//對資料條數的處理
public void settotalsize(int totalsize) else
}//對數總頁面數量的處理
public int gettotalpage()
@override
public int hashcode()
@override
public boolean equals(object obj) }
分頁方法的優化:
public string getorderinfo()
//判斷是否是第一次呼叫這個方法
object obj=session.get("pageutil");
if(obj==null)
//對不同的操作請求進行判斷
if("1".equals(op))else if("2".equals(op))else if("3".equals(op))else if("4".equals(op))
//將最新的分頁資訊存起來
session.put("pageutil", pageutil);
//根據頁面號查詢資訊
orderslist=ordersservice.find(usersid,pageutil.getsta(),pageutil.getpageno(),pageutil.getpagesize());
//存到session中,方便前台的使用
session.put("yeorders", orderslist);
//轉成json資料
jsonobject=new jsonobject();
//往前臺傳送
jsonobject.setrows(orderslist);
return "success";
}html中的分頁**:
js中的函式:
function pageinfo(op),function(data)else if(ordstas==1)else if(ordstas==2)else if(ordstas==3)else if(ordstas==4)
str+="";
str+="";
str+=""+zhuatai+"(訂單狀態)
";str+="日期:"+myorders[i].orddate+"
|";str+=""+myorders[i].recipient+"
|";str+="訂單號:
"+myorders[i].ordid+"(訂單號) | ";
str+="訂單金額:
"+myorders[i].ordtatol+"
元";str+="
";for(var j=0;jstr+="";
str+="
";str+=""+myorders[i].orderdetails[j].goodsname+"
";str+=""+myorders[i].orderdetails[j].detaprice+"
元 ×
"+myorders[i].orderdetails[j].detanum+"件";}
str+="";}
$("#bigdiv").html($(str));
},"json");
}resultmap :一對多
select * from (select a.*,rownum rn from (select o.*,ad.recipient from orders o,address ad where ad.addrid=o.addrid
and o.usersid=#
and ordsta=#
order by orddate desc)a where # >=rownum)b where rn>#
select o.ordid,g.goodsminpic,g.goodsname,od.detanum,od.detaprice,od.detasta,p.ptid from
orders o,orderdetail od,goods g,product p where o.ordid = od.ordid and od.ptid = p.ptid
and p.goodsid = g.goodsid and o.ordid = #
javaWeb智慧型分頁
模仿的是鬥魚網頁端的分頁效果,效果如下。學校老師教的分頁太low了,所以自己模仿乙個以後可以用。pagebean.setcurrentpage currentpage 設定當前頁 int index currentpage 1 pagesize listmessages messagedao.fin...
JavaWeb 分頁查詢
之前寫的簡易購物車系統,在顯示圖書列表的時候是全部顯示出來,圖書少的時候沒有什麼問題,但當圖書數量變多的時候,一下子把全部圖書顯示出來會讓介面看的不美觀,所以就打算加個分頁查詢的功能 最終效果 實現 分頁查詢有幾個比較重要的引數,pagenum當前的頁數,pagesize每頁所展示的資料,total...
JAVA WEB開發分頁演算法
分頁是所有的專案使用之中最為常見的功能之一,並且分頁的目的是為了減少資料的讀取數量。大家試想,如果一張表中的資料非常多,這時如果不採用分頁而是將所有的資料都載入顯示,那麼會出現如下兩個問題 載入的資料過多,會造成記憶體空間的不足 資料載入的過多,使用者的瀏覽會非常的麻煩,而且使用者不一定要檢視所有的...