一、分页原理
二、使用IPage分页
service:
public interface UserInfoService extends IService<UserInfo> { IPage getUserInfoList(GetUserInfoListVo getUserInfoListVo); }
serviceImpl:
public IPage getUserInfoList(GetUserInfoListVo getUserInfoListVo) { Page page = Utils.getPage(getUserInfoListVo); //初始化页(当前页current,每页容量size)new Page(pageIndex,pageSize)
return userInfoMapper.getUserInfoList(page, getUserInfoListVo); }
mapper:
@Mapper public interface UserInfoMapper extends BaseMapper<UserInfo> { IPage<UserInfo> getUserInfoList(Page page, @Param("param") GetUserInfoListVo getUserInfoListVo); }
后续直接写对应的sql
三、Page 实现 IPage
public class Page<T> implements IPage<T> { private List<T> records; private long total; private long size; private long current; private List<OrderItem> orders; private boolean optimizeCountSql; private boolean isSearchCount; private boolean hitCount; ...... }