tlias管理系统--部门管理--分页插件PageHelper实现分页功能

This commit is contained in:
2025-11-16 15:58:49 +08:00
parent a38443bd2e
commit 636d9d7be5
3 changed files with 44 additions and 9 deletions

View File

@@ -39,6 +39,12 @@
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--pageHelper分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.4.2</version>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>

View File

@@ -12,10 +12,18 @@ public interface EmpMapper {
* 查询总记录数
* @return
*/
@Select("select count(*) from emp")
Long getTotal();
/* @Select("select count(*) from emp")
Long getTotal();*/
@Select("select * from emp limit #{startIndex},#{pageSize}")
List<Emp> getPageList(int startIndex,int pageSize);
/**
* 分页查询
* @param
* @param
* @return
*/
/*@Select("select * from emp limit #{startIndex},#{pageSize}")
List<Emp> getPageList(int startIndex,int pageSize);*/
@Select("select * from emp")
public List<Emp> list();
}

View File

@@ -1,5 +1,7 @@
package com.inmind.service.impl;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.inmind.mapper.EmpMapper;
import com.inmind.pojo.Emp;
import com.inmind.pojo.PageBean;
@@ -21,23 +23,42 @@ public class EmpServiceImpl implements EmpService {
* @param pageSize 每页显示条数
* @return
*/
@Override
/*@Override
public PageBean page(Integer page, Integer pageSize) {
//1.获取总记录数
Long total = empMapper.getTotal();
//2.获取当前页的数据列表
/*
*//*
-- 分页查询 select * from emp limit 参数1 参数2
-- 参数1起始索引 就是(页码-1*每页显示的记录数
-- 参数2查询返回的记录数 就是每页显示的记录数
*/
*//*
int startIndex = (page - 1)* pageSize;
List<Emp> rows = empMapper.getPageList(startIndex,pageSize);
//3.封装成分页查询结果,并返回
/*PageBean pageBean = new PageBean();
*//*PageBean pageBean = new PageBean();
pageBean.setRows(rows);
pageBean.setTotal(total);
return pageBean;*/
return pageBean;*//*
return new PageBean(total, rows);
}*/
/**
* 分页查询
* @param page 页码
* @param pageSize 每页显示条数
* @return
*/
@Override
public PageBean page(Integer page, Integer pageSize) {
//使用分页插件,开始分页,传入页码和每页显示条数即可
PageHelper.startPage(page,pageSize);
//调用mapper的普通的查询语句即可(此时list方法已经被分页插件修改了底层sql它返回一个包含分页查询数据的page对象)
List<Emp> list = empMapper.list();
Page<Emp> p = (Page<Emp>) list;
//封装分页查询结果
return new PageBean(p.getTotal(), p.getResult());
}
}