Mybatis中的分页查询
引入插件:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.10</version>
</dependency>
配置:
<!-- 分页插件-->
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<!-- 方言-->
<property name="helperDialect" value="mysql"/>
<!-- 如果pageSize为0,不分页-->
<property name="pageSizeZero" value="true"/>
</plugin>
</plugins>
使用实例:
@Override
public PageInfo<Student> showAll(int pageNum, int pageSize) {
// 开启分页查询
PageHelper.startPage(pageNum, pageSize);
List<Student> students = studentMapper.showAll();
PageInfo<Student> studentPageInfo = new PageInfo<Student>(students);
return studentPageInfo;
}
springboot的分页查询
引入插件:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.4.1</version>
</dependency>
使用实例:
@Override
public PageInfo<Student> showAll(int pageNum, int pageSize) {
PageHelper.startPage(pageNum, pageSize);
List<Student> students = studentMapper.showAll();
PageInfo<Student> studentPageInfo = new PageInfo<Student>(students);
return studentPageInfo;
}
Springboot-plus的分页查询
添加配置类:
@Configuration
public class MybatisPlusConfig {
/**
* 新版分页插件设置
* @return
*/
@Bean
public MybatisPlusInterceptor getPaginationInnerInterceptor(){
MybatisPlusInterceptor interceptor=new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
return interceptor;
}
}
使用:
@Test
void t17(){
Page<User> userPage = userMapper.selectPage(new Page<User>(1, 3), null);
System.out.println(userPage.getRecords());
}