在mybatis_mbg模块下测试
com.github.pagehelper pagehelper 5.2.0
在核心配置文件mybatis-config.xml里面配置
interceptor = "com.github.pagehelper.PageInterceptor" >
把t_emp 表里面的数据断开


添30条加测试数据

- @Test
- public void testPage(){
- SqlSession sqlSession = SqlSessionUtil.getSqlSession();
- EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);
- //查询功能之前开启分页功能
- PageHelper.startPage(1, 4);
- List
list = mapper.selectByExample(null); - list.forEach(System.out::println);
-
- }

- @Test
- public void testPage(){
- SqlSession sqlSession = SqlSessionUtil.getSqlSession();
- EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);
- //查询功能之前开启分页功能
- Page
- List
list = mapper.selectByExample(null); - list.forEach(System.out::println);
- System.out.println(page);
- }

- @Test
- public void testPage(){
- SqlSession sqlSession = SqlSessionUtil.getSqlSession();
- EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);
- //查询功能之前开启分页功能
- Page
- List
list = mapper.selectByExample(null); - //查询功能之后可以获取分页相关的所有数据
- PageInfo
pageInfo = new PageInfo<>(list, 5); - list.forEach(System.out::println);
- System.out.println(pageInfo);
- }

总结
a> 在查询功能之前使用 PageHelper.startPage(int pageNum, int pageSize) 开启分页功能pageNum :当前页的页码pageSize :每页显示的条数b> 在查询获取 list 集合之后,使用 PageInfopageInfo = new PageInfo<>(List list, int navigatePages) 获取分页相关数据list :分页之后的数据navigatePages :导航分页的页码数c> 分页相关数据PageInfo{pageNum=8, pageSize=4, size=2, startRow=29, endRow=30, total=30, pages=8,list=Page{count=true, pageNum=8, pageSize=4, startRow=28, endRow=32, total=30,pages=8, reasonable=false, pageSizeZero=false},prePage=7, nextPage=0, isFirstPage=false, isLastPage=true, hasPreviousPage=true,hasNextPage=false, navigatePages=5, navigateFirstPage4, navigateLastPage8,navigatepageNums=[4, 5, 6, 7, 8]}pageNum :当前页的页码pageSize :每页显示的条数size :当前页显示的真实条数total :总记录数pages :总页数prePage :上一页的页码nextPage :下一页的页码isFirstPage/isLastPage :是否为第一页 / 最后一页hasPreviousPage/hasNextPage :是否存在上一页 / 下一页navigatePages :导航分页的页码数navigatepageNums :导航分页的页码, [1,2,3,4,5]
以上P01到P62为Mybatis的内容 笔记来自B站杨博超老师的视频笔记