[Mybatis-Plus笔记] MybatisPlus-02-分页查询
一、添加分页拦截器
编写分页拦截器
@Configuration
public class MybatisPlusConfig {
@Bean
MybatisPlusInterceptor mpInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
return interceptor;
}
}
二、测试运行
BaseMapper 接口中的 selectPage( ) 方法可以进行分页查询,参数是 Page 实例和条件选择器
@SpringBootTest
public class MybatisPlusTest {
@Autowired
UserMapper userMapper;
@Test
void testSelectPage() {
// IPage<User> page = new Page<>(1, 2);
IPage<User> page = new Page<>();
page.setCurrent(1); // 设置当前页
page.setSize(2); // 设置每页数据个数
userMapper.selectPage(page, null);
System.out.printf("共有 %d 条数据\n", page.getTotal());
System.out.printf("共有 %d 页,每页 %d 条数据\n", page.getPages(), page.getSize());
System.out.println("当前页码:" + page.getCurrent());
System.out.println("当前页数据:" + page.getRecords());
}
}
通过构造器或者 set 方法初始化 current 和 size,如果未初始化,默认 current 为 1,size 为 10
三、Mybatis-Plus日志输出到终端
yaml 配置如下内容即可:
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
通 过Mybatis-Plus 的日志可以看到 Preparing 的 SQL 语句
比如查询当前页为 1,每页 5 条数据,日志如下:
而查询 当前页为 3,每页 5 条数据时则是: