使用mybatis-plus实现分页功能

一,注入mybatis-plus依赖

            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>3.0.5}</version>
            </dependency>

二,创建工具类,配置分页插件

package cn.education.java.config;

import com.baomidou.mybatisplus.core.injector.ISqlInjector;
import com.baomidou.mybatisplus.extension.injector.LogicSqlInjector;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.springframework.context.annotation.Bean;

@Configuration
public class EduCode {
    /**
     * 逻辑删除插件
     */
    @Bean
    public ISqlInjector sqlInjector() {
        return new LogicSqlInjector();
    }

    /**
     * 分页插件
     * @return
     */
    @Bean
    public PaginationInterceptor paginationInterceptor(){
        return new  PaginationInterceptor();
    }
}

三,实现 创建controller

/**
     * 实现分页查询
     *
     */
    @GetMapping("pageTeacher/{current}/{limit}")
    public R pageTeacher(@PathVariable long current ,@PathVariable long limit){
        //创建page对象
        Page<Teacher> page = new Page<>(current,limit);
        //调用分页方法
        //调用方法时底层封装 封装到page对象中
        service.page(page,null);//目前没使用条件 null代替
        long total = page.getTotal();//总记录数
        List<Teacher> records = page.getRecords();//数据为list集合
        //返回结果两种方式
//        //第一种创建集合
//        HashMap map = new HashMap<>();
//        map.put("total",total);
//        map.put("rows" ,records);
//        return R.ok().data(map);

        //第二种 直接返回
        return R.ok().data("total",total).data("records",records);
    }

注意:代码中的实体类Teacher 和 封装的json类R都在此文章:
https://blog.csdn.net/bilinqiang1213/article/details/117717654?spm=1001.2014.3001.5501

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值