驽马十驾 驽马十驾

驽马十驾,功在不舍

目录
MyBatisPlus自定义分页的Count
/  

MyBatisPlus自定义分页的Count

正文

MyBatisPlus可以自动分页,但是有些复杂的SQL的时候where条件时多余的,那么可以采取自定义SQL

代码中这么写

//1 禁止自动的SQL查询
    mpPage.setSearchCount(false);
    Long total = baseMapper.adminSearchUserPageCount(condition);
    //2.正常查询,此时不会自动Count
    Page<SearchUserPageResult> result = baseMapper.adminSearchUserPage(mpPage, condition);

    //3. 赋值total
    result.setTotal(total);

然后有一个对应的Mapper接口

Long adminSearchUserPageCount(@Param("condition") PageCondition condition);

当然也会有对应XML

<select id="adminSearchUserPageCount" resultType="long">
        SELECT COUNT(*)
        FROM user_core c
       	xxx
    </select>

总结

  • 设置 mpPage.setSearchCount(false)
  • 自定义分页接口,然后书写XML文件
积土成山,风雨兴焉。积水成渊,蛟龙生焉。