<!--mybatis-plus依赖-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3.4</version>
</dependency>
在util包下面创建一个工具类然后交给容器。
package com.example.testexcel.util;
/**
* Author: 于顺清
* Coopyright(C),2019-2022
* FileName:MybatisPlusConfig
* Date: 2022/1/12/01212:56
* Description:yuyuyu
*/
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MybatisPlusConfig {
/**
* 注册插件
*/
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
// 添加分页插件
PaginationInnerInterceptor pageInterceptor = new PaginationInnerInterceptor();
// 设置请求的页面大于最大页后操作,true调回到首页,false继续请求。默认false
pageInterceptor.setOverflow(false);
// 单页分页条数限制,默认无限制
pageInterceptor.setMaxLimit(500L);
// 设置数据库类型
pageInterceptor.setDbType(DbType.MYSQL);
interceptor.addInnerInterceptor(pageInterceptor);
return interceptor;
}
}
然后实际使用如下:
小白备注:我这里是顺便用了一下条件构造器QueryWrapper。query那里测试的时候可以直接写Null,就是查询所有。
//测试MybatisPlus分页插件
@Test
public void testMybatisPlus_Page(){
QueryWrapper queryyWapper = new QueryWrapper<>();
queryyWapper.eq("number","008");
// 两个参数:current的值默认是1,从1开始,不是0。size是每一页的条数。
Page<client> page = new Page<>(1, 4);
Page<client> userPage = userdao.selectPage(page, queryyWapper);
userPage.getRecords().forEach(System.out::println);
System.out.println("当前页:" + userPage.getCurrent());
System.out.println("总页数:" + userPage.getPages());
System.out.println("记录数:" + userPage.getTotal());
System.out.println("是否有上一页:" + userPage.hasPrevious());
System.out.println("是否有下一页:" + userPage.hasNext());
}