SpringBoot+Mybatis-Plus两种分页方法

首先配置mybatis-plus配置

package com.qfclo.login.config;

import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;

import com.baomidou.mybatisplus.extension.plugins.PerformanceInterceptor;

import org.mybatis.spring.annotation.MapperScan;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import java.util.Properties;

@Configuration

@MapperScan("com.qfclo.login.mapper")

public class MybatisPlusConfig {

/**

* 分页插件

*/

    @Bean

    public PaginationInterceptorpaginationInterceptor() {

return new PaginationInterceptor();

    }

/**

* 打印 sql

*/

    @Bean

    public PerformanceInterceptorperformanceInterceptor() {

PerformanceInterceptor performanceInterceptor =new PerformanceInterceptor();

        //格式化sql语句

        Properties properties =new Properties();

        properties.setProperty("format", "faalse");

        performanceInterceptor.setProperties(properties);

        return performanceInterceptor;

    }

}

第一种方式,mybatis-plus原生QueryWrapper方式分页,这种方式比较简单,可以不用修改Mapper,适合简单的增删改查。

    @RequestMapping(value = "/orgist1")//,method = RequestMethod.POST)
    public Map<String,Object> orglist1()
    {

        Map<String,Object> map = new HashMap<>();

        QueryWrapper<OauthOrganization> queryWrapper =  new QueryWrapper<>();
        queryWrapper.orderByDesc("id");

        Page<OauthOrganization> page = new Page<>(1,5);  // 查询第1页,每页返回5条
        IPage<OauthOrganization> iPage = oauthOrganizationMapper.selectPage(page,queryWrapper);
        System.out.println(iPage.getRecords().size());
        System.out.println(JSON.toJSONString(iPage));
        return map;
    }

第二种方式,使用mapper文件的select注解,优点是可以方便的建立查询语句,可以联合多表查询。
Mapper文件

    @Select("SELECT * FROM oauth_organization WHERE id < #{m.id} ORDER BY `id` DESC")
    List<OauthOrganization> selectpage(Map<String,Object> m, Page<OauthOrganization> page);

Controller文件

    @RequestMapping(value = "/orgist4")//,method = RequestMethod.POST)
    public Map<String,Object> orglist4()
    {

        Map<String,Object> map = new HashMap<>();
        Map<String,Object> m = new HashMap<>();
        m.put("id",5);
        Page<OauthOrganization> page = new Page<>(1,5);
        page.setRecords(oauthOrganizationMapper.selectpage(m,page));
        System.out.println(page.getRecords().size());
        System.out.println(JSON.toJSONString(page));
        return map;
    }
    原文作者:小鱼儿2020
    原文地址: https://www.jianshu.com/p/0a21569f1e06
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞