/** * 获取分页参数 * * @param params RowBounds参数 * @return 返回Page对象 */ public Page getPage(Object params) { Page page = getLocalPage(); if (page == null) { if (params instanceof RowBounds) { RowBounds rowBounds = (RowBounds) params; if (offsetAsPageNum) { page = new Page(rowBounds.getOffset(), rowBounds.getLimit(), rowBoundsWithCount); } else { page = new Page(rowBounds, rowBoundsWithCount); // offsetAsPageNum=false的时候,由于PageNum问题,不能使用reasonable,这里会强制为false page.setReasonable(false); } } else { page = getPageFromObject(params); } setLocalPage(page); } // 分页合理化 if (page.getReasonable() == null) { page.setReasonable(reasonable); } // 当设置为true的时候,如果pagesize设置为0(或RowBounds的limit=0),就不执行分页,返回全部结果 if (page.getPageSizeZero() == null) { page.setPageSizeZero(pageSizeZero); } return page; }