写法一:
// 拦截器
@Configuration
public class MybatisPlusConfig {
@Bean
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
// 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求 默认false
// paginationInterceptor.setOverflow(false);
// 设置最大单页限制数量,默认 500 条,-1 不受限制
// paginationInterceptor.setLimit(500);
// 开启 count 的 join 优化,只针对部分 left join
paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true));
return paginationInterceptor;
}
}
// 分页
// 封装前端传来的页数和每页条数
IPage<News> newsIPage = new Page<>(page,limit);
// 根据分页信息查询数据
IPage<News> result = newsMapper.selectPage(newsIPage,null);
// 将查到的信息装入集合中方便返回前端
List<News> newsList = result.getRecords();
写法二:
// 拦截器
@Configuration
public class MybatisPlusConfig {
@Bean
public MybatisPlusInterceptor MybatisPlusInterceptor(){
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return interceptor;
}
}
// 分页
Page<News> newsPage = new Page<>(page,limit);
Page result = newsMapper.selectPage(newsPage,null);
// 查询分页后的新闻信息,并将新闻类属性:kind与种类表属性:kname对应
List<News> newsList =result.getRecords();