如果你也在用 MyBatis,建议尝试该分页插件,这一定是最方便使用的分页插件。分页插件支持任何复杂的单表、多表分页。
IDE:IDEA
数据库:MySQL 5.5
一.Maven项目
1.引入依赖(pom.xml)
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.0</version>
</dependency>
<dependency>
<groupId>com.github.jsqlparser</groupId>
<artifactId>jsqlparser</artifactId>
<version>1.3</version>
</dependency>
2.编辑mybatis核心配置文件,配置分页插件
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<property name="helperDialect" value="mysql"/>
<property name="reasonable" value="true"/>
</plugin>
</plugins>
注意:plugins标签位置必须在typeAliases标签之后
3.使用
PageHelper.startPage(pageNum, pageSize); // 只对下一行代码作用
List<User> users = mapper.userList(); // 查询全部
System.out.println(users);
输出结果:
pageNum:第几页
pageSize:每页显示几条数据
此方式只返回一个Page对象
4.得到数据(使用fastjson封装数据)
1. 引入fastjson依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.4</version>
</dependency>
2. 使用
String s = JSON.toJSONString(users);
System.out.println(s);
输出结果:
二.Spring Boot项目
1.引入依赖(pom.xml)
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.3</version>
</dependency>
2.编辑spring boot核心配置文件(本例:properties)
# 插件配置 pagehelper
pagehelper.helperDialect=mysql
# 分页合理化参数,默认值为false。当该参数设置为 true 时,pageNum<=0 时会查询第一页, pageNum>pages(超过总数时),会查询最后一页
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql
3.使用
同Maven项目