PageHlper:Mybatis开发的分页插件,简化分页处理,可以把查询数据的一条sql语句自动拦截下来,生成两条分页sql语句
如:
SELECT * FROM 表 WHERE 条件
Mybatis的PageHlper会拦截上面的sql语句,生成两条sql语句
SELECT COUNT(*) FROM 表 WHERE 条件
SELECT * FROM 表 WHERE 条件 LIMIT #{start},#{length}
使用三步骤
一:使用 Pagehlper 设置分页规则
// page:当前页 pageSize:每页大小
pageHelper.startPage(page, pageSize);
//根据员工名称查询所有员工信息
List<Employee> employeeList = employeeMapper.findAll(name);
三:实例化PageHlper提供的PageInfo对象,传递所有数据列表
PageInfo<Employee> pageInfo = new PageInfo<>(employeeList);
四、完整代码实现
public R<Page<Employee>> page(Integer page, Integer pageSize, String name) {
//使用 Pagehlper 设置分页规则
pageHelper.startPage(page, pageSize);
//调用Mapper查询所有用户数据
List<Employee> employeeList = employeeMapper.findAll(name);
//实例化PageHlper提供的PageInfo对象,传递所有数据列表
PageInfo<Employee> pageInfo = new PageInfo<>(employeeList);
//实例化自定义实体类Page对象封装成前端需要的数据类型
Page<Employee> pageEmployee = new Page<>();
//封装数据
pageEmployee.setRecords(pageInfo.getList());
pageEmployee.setTotal(pageInfo.getTotal());
pageEmployee.setPage(page);
pageEmployee.setPageSize(pageSize);
//返回数据
return R.success(pageEmployee);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。