Mybatis Plus中怎么自定義分頁,針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司一直秉承“誠信做人,踏實做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務(wù)為基礎(chǔ),以質(zhì)量求生存,以技術(shù)求發(fā)展,成交一個客戶多一個朋友!專注中小微企業(yè)官網(wǎng)定制,網(wǎng)站建設(shè)、網(wǎng)站設(shè)計,塑造企業(yè)網(wǎng)絡(luò)形象打造互聯(lián)網(wǎng)企業(yè)效應(yīng)。
基于mybatis plus
的文檔
// 當`page`參數(shù)為null時,會拋出空指針異常> E selectPage(E page, @Param(Constants.WRAPPER) Wrapper queryWrapper);
如果想實現(xiàn)自動開閉分頁需要這樣實現(xiàn)
基礎(chǔ)分頁參數(shù)
@Data @ToString(callSuper = true) @EqualsAndHashCode(callSuper = true) public class PageParamextends Page { private Integer isOpenPage = 1; }
public class BaseServiceImpl, T> extends ServiceImpl { public PageParam selectByPage(PageParam page, Wrapper queryWrapper) { if (page.getIsOpenPage() == 1) { return getBaseMapper().selectPage(page, queryWrapper); } List list = list(queryWrapper); PageParam pageResult = new PageParam<>(); pageResult.setRecords(list); pageResult.setTotal(list.size()); return pageResult; } public PageParam selectByPage(PageParam page, Function , List > function) { if (page.getIsOpenPage() == 1) { function.apply(page); return page; } List list = function.apply(null); PageParam pageResult = new PageParam<>(); pageResult.setRecords(list); pageResult.setTotal(list.size()); return pageResult; } public IPage selectByPage(PageParam page, Wrapper wrapper, Class clz) { IPage eiPage = selectByPage(page, wrapper); return eiPage.convert(o -> { E e = null; try { e = clz.newInstance(); } catch (InstantiationException | IllegalAccessException ex) { throw new RuntimeException(ex); } BeanUtils.copyProperties(o, e); return e; }); } }
關(guān)于Mybatis Plus中怎么自定義分頁問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。