一、mybatis-plus 自带的 selectPage
// 分页参数
Page<XXXXXXXDTO> rowPage = new Page(page, pageSize);
// queryWrapper组装查询where条件
LambdaQueryWrapper<SchoolStudent> queryWrapper = new LambdaQueryWrapper<>();
rowPage = this.baseMapper.selectPage(rowPage, queryWrapper);
return rowPage;
二、mybatis抽象方法在xml中 使用 Mybatis-plus 的Page对象封装插件
定义XML
<select id="getxxxxxList" resultType="com.example.xxxxx.XXXXXXXDTO">
select xxxxxxx.........
</select>
定义的抽象方法
Page<XXXXXXXDTO> getxxxxxList(Page<XXXXXXXDTO> rowPage, @Param("xxxx") XXXXXXXDTO xxxxx);
实际查询
@Override
public IPage<XXXXXXXDTO> getxxXXxxxXxList(Integer current, Integer size) {
Page<XXXXXXXDTO> rowPage = new Page(current, size);
XXXXXXXDTO xxxxx= new XXXXXXXDT();
rowPage = this.baseMapper.getxxxxxList(rowPage, schoolStudent);
return rowPage;
}
仅供参考,具体需要带入自己的业务内容
二、PageHelper 插件分页查询
依赖
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.4.5</version>
</dependency>
实际调用代码
@Override
public PageInfo<XXXXXXXDTO> getPageStudentFour(Integer currentPage, Integer pageSize) {
// 初始化插件
PageHelper.startPage(currentPage, pageSize);
// 查询结果 会自动附带分页Limit 条件
List<XXXXXXXDTO> list = xxxxxMapper.list();
//用PageInfo对结果进行包装
PageInfo page = new PageInfo(list);
return page;
}