開發日記 計算分頁邊界為什麼會出錯?踩坑日記

2021-10-03 21:50:00 字數 1507 閱讀 5636

關於分頁大家都可以很輕鬆的寫出,但是分頁的邊界是否會考慮適當呢?最近在處理分頁邊界的時候,老是出現問題,感覺也沒有錯。記錄一下自己的踩坑經歷吧。

@apioperation("獲取全部的景點並採用分頁的形式")

public commonres getall2(@requestparam(value = "page",defaultvalue = "1")integer page,

@requestparam(name = "size",defaultvalue = "5")integer size) throws busines***ception

system.out.println("當前可以顯示的頁面應該是: " + math.ceil((double)total/size));

system.out.println("當前可以顯示的頁面應該是: " + math.ceil(total/size));

pagehelper.startpage(page,size);

arraylistpoints = pointservice.getpoints();

if(page <= 0 || page > math.ceil((double)total/size))

pageinfo pageinfo = new pageinfo(points,size);

return commonres.create(pageinfo);

}我們先看輸出結果,資料庫中一共是8條記錄,每一頁顯示5條記錄。那麼就應該有兩頁可以顯示。

當前景點總數量:8

景點每一頁數量:5

景點頁數量:1

景點頁數量:1.6

當前可以顯示的頁面應該是: 2.0

當前可以顯示的頁面應該是: 1.0

system.out.println("當前可以顯示的頁面應該是: " + math.ceil(total/size));

if(page <= 0 || page > math.ceil(total/size))

system.out.println("當前可以顯示的頁面應該是: " + math.ceil((double)total/size));

if(page <= 0 || page > math.ceil((double)total/size))

可以看一下上面的兩種對比,加上double之後就多了一頁了。

system.out.println("景點頁數量:" + total/size);

system.out.println("景點頁數量:" + (double)total/size);

再看一下這個,這是total和size都是integer,結果顯示為1

(double)total/size這種方式就是我們想要的了。

if(page <= 0 || page > math.ceil((double)total/size))

為什麼要分頁載入

在 建設中網頁的排列方式一般有兩種,一種是乙個頁面能把所有內容顯示完的,另一種就是不能在乙個頁面裡全部顯示完的,像 新聞經常會更新,那麼顯然一頁顯示不完要分多頁來顯示,那麼在 建設中,對資料庫進行查詢後,如果進行分頁顯示呢,在jsp 開發中通過有2種解決方案.如下所示 1.一次把資料庫中所有的記錄都...

原創 為什麼要學 計算機組織 日記

這學期星期一我回去旁聽資工系大學部開的計算機組織與組合語言,其實當時我也不是很確定是否有必要旁聽這一門課,以前我大二時有修過,但也沒修的很好,印象中這門課就是計算機概論的加強版,講的比較深就是了。當教授講道cpu的每個部份,如alu ir pc.等block,又談到alu要怎麼利用基本邏輯門如and...

為什麼要分頁分段儲存

首先說為什麼會出現分頁分段,如果我們直接使用物理記憶體直接儲存的話,會因為併發的原因造成儲存混亂,各個指令混雜儲存,製造很多麻煩。如何解決 解決這個問題通常有兩種方法 一種通過基址暫存器和界線暫存器形成位址空間,通過交換技術解決記憶體超載。另外一種就是基於分頁的虛擬位址技術。1 交換技術 把乙個程序...