Mybaits笔记框架:https://blog.csdn.net/qq_43751200/article/details/128154837
Mybatis中文官方文档: https://mybatis.org/mybatis-3/zh/index.html
分页插件
- 1. 分页插件使用步骤
- 2. 分页插件的使用
- 2.1: 开启分页功能
- 2.2: 分页相关数据
- 2.3: 常用数据
1. 分页插件使用步骤
添加依赖
<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.2.0</version>
</dependency>
在核心配置文件mybatis-config.xml
中配置分页插件
<plugins>
<!--设置分页插件-->
<plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>
2. 分页插件的使用
2.1: 开启分页功能
在查询功能之前使用PageHelper.startPage(int pageNum, int pageSize)
开启分页功能
-
pageNum:当前页的页码
-
pageSize:每页显示的条数
测试方法:
@Test
public void testPageHelper1(){
SqlSession sqlSession = SqlSessionFactoryUtils.getSqlSession();
EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);
// 访问一页,每页四条数据
PageHelper.startPage(2, 4);
List<Emp> empList = mapper.selectByExample(null);
empList.forEach(emp -> System.out.println(emp));
}
2.2: 分页相关数据
方法一:直接输出
@Test
public void testPageHelper2(){
SqlSession sqlSession = SqlSessionFactoryUtils.getSqlSession();
EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);
// 访问一页,每页四条数据
Page<Object> page = PageHelper.startPage(1, 4);
List<Emp> empList = mapper.selectByExample(null);
// 在查询到List集合后,打印分页数据
System.out.println(page);
}
方法二:使用PageInfo
- 在查询获取list集合之后,使用
PageInfo<T> pageInfo = new PageInfo<>(List<T> list, intnavigatePages)
获取分页相关数据- list:分页之后的数据
- navigatePages:导航分页的页码数
@Test
public void testPageHelper3(){
SqlSession sqlSession = SqlSessionFactoryUtils.getSqlSession();
EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);
// 访问2页,每页4条数据
PageHelper.startPage(2, 4);
List<Emp> empList = mapper.selectByExample(null);
PageInfo<Emp> page = new PageInfo<>(empList, 5);
System.out.println(page);
}
2.3: 常用数据
- pageNum:当前页的页码
- pageSize:每页显示的条数
- size:当前页显示的真实条数
- total:总记录数
- pages:总页数
- prePage:上一页的页码
- nextPage:下一页的页码
- isFirstPage/isLastPage:是否为第一页/最后一页
- hasPreviousPage/hasNextPage:是否存在上一页/下一页
- navigatePages:导航分页的页码数
- navigatepageNums:导航分页的页码,[1,2,3,4,5]