<!--分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.2.0</version>
</dependency>
注意:plugins标签要在environments标签之前
<plugins>
<!--设置分页插件-->
<plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>
@Test
public void testPagehelper(){
SqlSession sqlSession = SqlSessionUtils.getSqlSession();
EmpMapper empMapper = sqlSession.getMapper(EmpMapper.class);
List<Emp> emps = empMapper.selectByExample(null);
for (Emp emp : emps) {
System.out.println(emp);
}
}
注意:从控制台日志可知,开启分页功能后,Pagehelper会通过拦截器的方式自动在查询sql中添加limit语句;
其中,语句的第一个参数值为(pageNum-1)*pageSize;第二个参数值为pageSize
@Test
public void testPagehelper(){
SqlSession sqlSession = SqlSessionUtils.getSqlSession();
EmpMapper empMapper = sqlSession.getMapper(EmpMapper.class);
//在查询之前,使用PageHelper.startPage(int pageNum, int pageSize)开启分页功能
//pageNum:当前页的页码
//pageSize:每页显示的条数
PageHelper.startPage(2,3);
List<Emp> emps = empMapper.selectByExample(null);
for (Emp emp : emps) {
System.out.println(emp);
}
}
@Test
public void testPagehelper(){
SqlSession sqlSession = SqlSessionUtils.getSqlSession();
EmpMapper empMapper = sqlSession.getMapper(EmpMapper.class);
//在查询之前,使用PageHelper.startPage(int pageNum, int pageSize)开启分页功能
//pageNum:当前页的页码
//pageSize:每页显示的条数
PageHelper.startPage(2,3);
List<Emp> emps = empMapper.selectByExample(null);
//在查询获取list集合之后,使用PageInfo<T> pageInfo = new PageInfo<>(List<T> list, int navigatePages)获取分页相关数据
//list:分页之后的数据
//navigatePages:导航分页的页码数
PageInfo<Emp> empPageInfo = new PageInfo<Emp>(emps,3);
System.out.println(empPageInfo);
}
PageInfo{
pageNum=2, pageSize=3, size=3, startRow=4, endRow=6, total=9, pages=3,
list=Page{count=true, pageNum=2, pageSize=3, startRow=3, endRow=6, total=9, pages=3, reasonable=false, pageSizeZero=false}
[Emp{empId=4, empName='小军', age=null, gender='女', deptId='null'},
Emp{empId=5, empName='小明1', age=20, gender='男', deptId='null'},
Emp{empId=8, empName='小红', age=25, gender='男', deptId='null'}],
prePage=1, nextPage=3, isFirstPage=false, isLastPage=false, hasPreviousPage=true, hasNextPage=true,
navigatePages=3, navigateFirstPage=1, navigateLastPage=3, navigatepageNums=[1, 2, 3]
}
属性
解析
pageNum
当前页的页码
pageSize
每页显示的条数
size
当前页显示的真实条数
total
总记录数
pages
总页数
prePage
上一页的页码
nextPage
下一页的页码
isFirstPage
是否为第一页
isLastPage
是否为最后一页
hasPreviousPage
是否存在上一页
hasNextPage
是否存在下一页
navigatePages
导航分页的页码数
navigatepageNums
导航分页的页码,[1, 2, 3]
手机扫一扫
移动阅读更方便
你可能感兴趣的文章