在查詢清單頁做分頁功能是個正常操作了。但是這個分頁具體怎麼做,還是有點意思的。之前我偶爾做過分頁,自己硬上,查詢語句裡加 offset,搞得自己很累。
這兩天我有類似需求,做的時候網上搜了搜覺得下面這個做法挺好的,簡單而且穩定。
話不多說,關鍵代碼如下:
// 查詢語句請自行腦補 (正常查詢即可,無需自己加 offset)
String query = 'SELECT ... FROM ... WHERE ... ';
ApexPages.StandardSetController con = new ApexPages.StandardSetController(Database.getQueryLocator(query));
// 每頁多少條
con.setPageSize(20);
// 目前傳回第xx頁
con.setPageNumber(xx);
// 獲得目前頁面資料
List<xxx> recordList = (List<xxx>) con.getRecords();
沒有搞錯,就是這樣簡單