今天遇到一个问题,MyBatis分页插件失效,导致分页无效,分页失效的原因是我在Controller里做了分页,但业务逻辑实现类对应的方法却写了两个SQL,第一个SQL是查询一条数据判断,第二个SQL是查询列表(是需要分页的),结果通过日志打印SQL,我发现它却对第一个SQL做分页。最后我的解决办法是,在业务逻辑实现类对应的方法做分页,解决了这个问题。

MyBatis实现分页很简单,需要引入如下两个依赖(以SpringBoot+MyBatis为例):

<dependency>
     <groupId>com.github.pagehelper</groupId>
     <artifactId>pagehelper</artifactId>
     <version>5.1.6</version>
 </dependency>
 <dependency>
     <groupId>com.github.pagehelper</groupId>
     <artifactId>pagehelper-spring-boot-starter</artifactId>
     <version>1.2.12</version>
 </dependency>

核心模板代码:

PageHelper.startPage(pageNum,pageSize);
List<T> list = xxxService.getAll();
PageInfo<T> pageInfo = new PageInfo<>(list);

通常建议这段代码写入Service层,最好不要写在Controller里面。

相关文章:

  • 2021-07-04
  • 2022-12-23
  • 2021-05-06
  • 2021-10-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-09-14
  • 2022-12-23
  • 2022-12-23
  • 2022-03-07
  • 2023-01-09
相关资源
相似解决方案