关于Mybatis-plus 分页插件失效,看这一篇就够了

Mybatis-plus 分页查询失效,总结为以下三点,如有遗漏欢迎补充

        1.Mybatis-plus 的版本 和 分页插件不匹配,自 Mybatis-plus3.4.0 版本后,都是使用的MybatisPlusInterceptor 来进行的拦截 所以推荐使用3.4.0 以后的版本

package demo.demo_dao.plus_config;


import com.baomidou.mybatisplus.annotation.DbType;

import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;

/**
 * @program: demo
 * @description:
 * @author: 工厂梦
 * @create: 2022-03-15 08:56:26
 **/

@EnableTransactionManagement
@Configuration
@MapperScan("demo.demo_dao.*.mapper")
public class MybatisPlusConfig {

    /**
     * 新的分页插件
     */
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }

}

 实际的分页拦截器还是

PaginationInnerInterceptor

2.在使用的时候 Page 如果没有设置 size的大小,他的默认值是10

3.自定义XML 分页的时候,Page page 要放最前面,同时要注意size 默认值,(否则摸头杀,不知道啥问题)

例如:

 /*
    * @Description: 自定义xml 分页
    * @Date: 2022/3/15 18:55
    */
    @RequestMapping("/customPage")
    @ResponseBody
    public  List customPage(Page page,String num){
        List users = userService.userPage(page,num);
        return  users;
    }

4.注意:问题1的实例代码,我们添加了注解

//事务的开启看你自己的需要 :@EnableTransactionManagement
@Configuration
要是你的MybatisPlusConfig 没有,并且无法正常运行,请加上

你可能感兴趣的:(java,开发语言)