springcloud +mybatisplus实现分页功能
程序员文章站
2022-03-26 17:10:50
springcloude +mybatisplus实现分页功能1.采用pagehelper方法这种方法自己在网上找了很多资料,但是没用使用成功。或许是版本冲突的原因,这里我重点记录下第二种方法,使用mybatisplus内置的分页方法2.mybatisplus内置的分页方法不需要导入第三方jar包,在mybatisplus的基础上 添加一个拦截器 ,实现类在调用mapper是多传一个Page 参数即可。2.1 拦截器package com.dfjg.tiku.tikubnczhomeworka...
springcloud +mybatisplus实现分页功能
1.采用pagehelper方法
这种方法自己在网上找了很多资料,但是没用使用成功。或许是版本冲突的原因,这里我重点记录下第二种方法,使用mybatisplus内置的分页方法
2.mybatisplus内置的分页方法
不需要导入第三方jar包,在mybatisplus的基础上 添加一个拦截器 ,实现类在调用mapper是多传一个Page 参数即可。
2.1 拦截器
package com.dfjg.tiku.tikubnczhomeworkassignment.config;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.plugins.pagination.optimize.JsqlParserCountOptimize;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MybatisPlusConfig {
@Bean
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
// 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求
// 默认false 为false时 会返回空数据
paginationInterceptor.setOverflow(true);
// 设置最大单页限制数量,默认 500 条,-1 不受限制
// paginationInterceptor.setLimit(500);
// 开启 count 的 join 优化,只针对部分 left join
paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true));
return paginationInterceptor;
}
}
2.2
实体类调调用mapper添加参数
public Map getHomeworks(BnczHomework bnczHomework1) {
//
// Page<BnczHomeworkDto> objectPage = new Page<>(1, 8);
// HashMap<Object, Object> map = new HashMap<>();
// List<BnczHomeworkDto> objects = new ArrayList<>();
// Page<BnczHomework> BnczHomeworks = bnczHomeworkMapper.selectByTeancherId(objectPage,bnczHomework1);
// return map;
// }
此处的 1为当前页,8为每页的条数。
Page为mybatisplus下的类,对返回的结果进行封装,包括当前页的数据,total,当前页码,总页数 等等,
参考链接
本文地址:https://blog.csdn.net/weixin_47679150/article/details/107885758