Mybatis plus 分页

基本使用

将分页插件注入到bean中

@Configuration
public class MPConfig {
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }
}

使用BaseMapper中提供的分页方法

LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper<>();
        lambdaQueryWrapper.gt(User::getAge, 30);
        Page<User> page = new Page<>(1, 2);
        IPage<User> users = userMapper.selectPage(page, lambdaQueryWrapper);

        System.out.println(users.getTotal());
        System.out.println(users.getRecords());

自定义分页

实际开发中有的分页查询是多表联查的,可以通过自定义SQL查询的方式

  • 注入分页插件
@Configuration
public class MPConfig {
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }
}
  • 定义mapper接口
IPage<User> selectPageUser(Page<User> page, @Param(Constants.WRAPPER)Wrapper<User> wrapper);
  • 定义XML文件
<select id="selectPageUser" resultType="com.naruto.mamba.entity.User">
        select * from user ${ew.customSqlSegment}
</select>
  • 使用分页
LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper<>();
        lambdaQueryWrapper.gt(User::getAge, 30);
        Page<User> page = new Page<>(1, 2);
        IPage<User> users = userMapper.selectPageUser(page, lambdaQueryWrapper);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言: 关于mybatis-plus的简介以及基本使用,我在《mybatis-plus的使用 ------ 入门》...
    贪挽懒月阅读 162,078评论 58 178
  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 5,677评论 0 4
  • (此代码拷贝可用) 前端与后端分页往往存在着数据 参数不对等的问题 例如 当前页 、每页的容量等等 使用插件做...
    天边的鱼阅读 2,705评论 1 0
  • 使用mybatis-plus实现分页查询 pom.xml导入mybatis-plus插件 编写config 实现分...
    你所热爱的阅读 4,370评论 0 2
  • 昨晚,睡在我身边的儿子,好几次迷迷糊糊睁开眼,定位好我的位置,就摇摇晃晃地朝我爬过来,一边边倚着我躺下,一边含糊地...
    Anita的奇妙花园阅读 423评论 0 10