美文网首页
mybatis plus 分页失效问题

mybatis plus 分页失效问题

作者: 一介书生独醉江湖 | 来源:发表于2022-04-28 17:34 被阅读0次
# pom.xml
# 这里的版本很重要;

# 我曾尝试 pagehelper-spring-boot-starter 使用1.2.3版本,结果抛出异常:
Caused by: java.lang.ClassNotFoundException: org.mybatis.logging.LoggerFactory
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[na:1.8.0_201]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_201]
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) ~[na:1.8.0_201]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_201]
    ... 69 common frames omitted
         <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.2.0</version>
        </dependency>
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.2.12</version>
        </dependency>

import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.github.pagehelper.PageHelper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Properties;

/**
 * mybatis-plus分页配置
 **/
@Configuration
public class MybatisPlusConfig {

    @Bean
    public PaginationInterceptor paginationInterceptor() {
        System.out.println("-----------------------------------------> MybatisPlusConfig.paginationInterceptor");
        PaginationInterceptor page = new PaginationInterceptor();
        // 设置方言类型
        page.setDialectType(DbType.MYSQL.getDb());
        return page;
    }

    @Bean
    public PageHelper pageHelper() {
        System.out.println("-----------------------------------------> MybatisPlusConfig.pageHelper");
        System.out.println("MybatisPlusConfig.pageHelper()");
        PageHelper pageHelper = new PageHelper();
        Properties properties = new Properties();
        properties.setProperty("offsetAsPageNum", "true");
        properties.setProperty("rowBoundsWithCount", "true");
        properties.setProperty("reasonable", "true");
        pageHelper.setProperties(properties);
        return pageHelper;
    }
}
# 使用部分

@Override
    public PageBean<BssNsignBusinessEntity> queryList(BssNsignBusinessSearchVo searchVo) {
        PageBean<BssNsignBusinessEntity> pageBean = new PageBean<>();
        try {
            PageHelper.startPage(searchVo.getPage(), searchVo.getLimit());
            PageInfo<BssNsignBusinessEntity> page = new PageInfo<>(bssNsignBusinessDao.queryPage(searchVo));
            pageBean.setCount(new Long(page.getTotal()).intValue());    // 条数
            pageBean.setLimit(searchVo.getLimit());                     // 设置每页显示记录数
            pageBean.setCurrentPage(searchVo.getPage());                // 设置当前页数
            pageBean.setData(page.getList());                           // 设置数据
            pageBean.setStatus(0);                                      // 设置状态码
            pageBean.setMessage(" 查询完成");                              // 设置返回信息
        } finally {
            PageHelper.clearPage();
        }
        return pageBean;
    }
# application.yml
mybatis:
  mapper-locations: classpath:mapping/*/*.xml
# 查询效果如下:
image.png

相关文章

网友评论

      本文标题:mybatis plus 分页失效问题

      本文链接:https://www.haomeiwen.com/subject/reudyrtx.html