springboot结合Mybatis和mybatis-plus实现分页查询的四种使用方式
·
一、结合MyBatis,不使用插件方式
1.1、不使用插件方式1
先在数据库中查询演示

controller

这里只是演示,就直接跳过了service层了,controller直接调用mapper


1.2、不使用插件方式2


1.3、带条件分页查询
方式一:直接在sql语句中拼接
mapper

方式二:直接在Java语句中拼接
controller

mapper

二、结合MyBatis,使用分页插件方式
2.1、使用PageHelper分页插件方式
参考:https://www.cnblogs.com/xiaowangxiao/p/11334466.html
三、结合mybatis-plus,不使用插件方式


四、结合mybatis-plus,使用PaginationInnerInterceptor插件方式
4.1、引进依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.1</version>
</dependency>
4.2、添加分页插件

4.3、controller
@GetMapping("/dynamic_table")
public Page<User> dynamic_table(
@RequestParam(value="pageNum",defaultValue = "1") Integer pageNum,
@RequestParam(value="pageSize",defaultValue = "5") Integer pageSize){
//从数据库中查出user表中的用户进行展示
//构造分页参数
Page<User> page = new Page<>(pageNum, pageSize);
//调用page进行分页,用户数据 和 分页信息都在userPage中
Page<User> userPage = userService.page(page, null);
return userPage ;
}
4.4、Service

4.5、ServiceImpl

4.6、Mapper/dao


Page类详细信息
public class Page<T> implements IPage<T> {
private static final long serialVersionUID = 8545996863226528798L;
/*查询数据列表*/
protected List<T> records = Collections.emptyList();
/*总数*/
protected long total = 0;
/*每页显示条数,默认 10*/
protected long size = 10;
/*当前页*/
protected long current = 1;
等
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)