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> <artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<!--pageHelper分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.4.2</version>
</dependency>
</dependencies> </dependencies>
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>

View File

@@ -12,10 +12,18 @@ public interface EmpMapper {
* 查询总记录数 * 查询总记录数
* @return * @return
*/ */
@Select("select count(*) from emp") /* @Select("select count(*) from emp")
Long getTotal(); 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; package com.inmind.service.impl;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.inmind.mapper.EmpMapper; import com.inmind.mapper.EmpMapper;
import com.inmind.pojo.Emp; import com.inmind.pojo.Emp;
import com.inmind.pojo.PageBean; import com.inmind.pojo.PageBean;
@@ -21,23 +23,42 @@ public class EmpServiceImpl implements EmpService {
* @param pageSize 每页显示条数 * @param pageSize 每页显示条数
* @return * @return
*/ */
@Override /*@Override
public PageBean page(Integer page, Integer pageSize) { public PageBean page(Integer page, Integer pageSize) {
//1.获取总记录数 //1.获取总记录数
Long total = empMapper.getTotal(); Long total = empMapper.getTotal();
//2.获取当前页的数据列表 //2.获取当前页的数据列表
/* *//*
-- 分页查询 select * from emp limit 参数1 参数2 -- 分页查询 select * from emp limit 参数1 参数2
-- 参数1起始索引 就是(页码-1*每页显示的记录数 -- 参数1起始索引 就是(页码-1*每页显示的记录数
-- 参数2查询返回的记录数 就是每页显示的记录数 -- 参数2查询返回的记录数 就是每页显示的记录数
*/ *//*
int startIndex = (page - 1)* pageSize; int startIndex = (page - 1)* pageSize;
List<Emp> rows = empMapper.getPageList(startIndex,pageSize); List<Emp> rows = empMapper.getPageList(startIndex,pageSize);
//3.封装成分页查询结果,并返回 //3.封装成分页查询结果,并返回
/*PageBean pageBean = new PageBean(); *//*PageBean pageBean = new PageBean();
pageBean.setRows(rows); pageBean.setRows(rows);
pageBean.setTotal(total); pageBean.setTotal(total);
return pageBean;*/ return pageBean;*//*
return new PageBean(total, rows); 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());
} }
} }