springboot使用Mybatis-plus分页插件的案例详解

 更新时间:2023年05月18日 09:19:25   作者:桑稚远方~  
这篇文章主要介绍了springboot使用Mybatis-plus分页插件的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

MyBatis Plus是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
Mybatis Plus可以节省大量时间,所有的CRUD代码都可以自动化完成。MyBatis Plus自带分页插件(即BaseMapper接口中的selectPage()方法),只要简单的配置即可实现分页功能。

本文重点介绍springboot使用Mybatis-plus分页插件的知识,具体内容如下所示:

1. 引入依赖

在 pom.xml 文件中添加 MyBatis Plus 和分页插件的依赖:

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

注意替换 {mybatis-plus-version} 为对应的版本号。

2. 配置分页插件

在 Spring Boot 的配置文件 application.yml 中添加分页插件的配置参数:

mybatis-plus:
  configuration:
    # 将下划线转换为驼峰命名规则
    map-underscore-to-camel-case: true
    # 配置 MyBatis Plus 分页插件
    plugins:
      - com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor

注意代码中的注释,其中 PaginationInterceptor 表示使用 MyBatis Plus 提供的分页插件。

3. 接口层代码

在接口层使用 MyBatis Plus 提供的 com.baomidou.mybatisplus.extension.plugins.pagination.Page 类来封装分页参数和查询结果,例如:

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;
    @Override
    public Page<User> getUsers(int pageNum, int pageSize) {
        // 封装分页参数
        Page<User> page = new Page<>(pageNum, pageSize);
        return userMapper.selectPage(page, null);
    }
}

这里使用 Page 类来封装分页参数,其中 pageNum 表示当前页码,pageSize 表示每页的记录数。使用 selectPage() 方法进行分页查询。

4. DAO 层代码

在 DAO 层的实体类中添加对应的注解和分页参数,例如:

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@Data
@TableName("user")
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

在 DAO 层继承 com.baomidou.mybatisplus.core.mapper.BaseMapper 接口,并使用 MyBatis Plus 提供的注解 @Mapper 和 @Repository,例如:

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
@Mapper
@Repository
public interface UserMapper extends BaseMapper<User> {
}

到这里,就可以在 Spring Boot 项目中使用 MyBatis Plus 分页插件了

到此这篇关于springboot使用Mybatis-plus分页插件的文章就介绍到这了,更多相关springboot使用Mybatis-plus分页内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于Java中try finally return语句的执行顺序浅析

    关于Java中try finally return语句的执行顺序浅析

    这篇文章主要介绍了关于Java中try finally return语句的执行顺序浅析,需要的朋友可以参考下
    2017-08-08
  • Java Spring Boot请求方式与请求映射过程分析

    Java Spring Boot请求方式与请求映射过程分析

    这篇文章主要介绍了Java Spring Boot请求方式与请求映射过程分析,Spring Boot支持Rest风格:使用HTTP请求方式的动词来表示对资源的操作
    2022-06-06
  • 安卓系统中实现摇一摇画面振动效果的方法

    安卓系统中实现摇一摇画面振动效果的方法

    这篇文章主要介绍了安卓系统中实现摇一摇画面振动效果的方法,调用Android SDK中的SensorEventListener接口,需要的朋友可以参考下
    2015-07-07
  • java如何判断Date是上午还是下午

    java如何判断Date是上午还是下午

    文章介绍了三种在Java中判断Date对象是上午还是下午的方法:使用Calendar类、使用Java 8的java.time包以及使用SimpleDateFormat进行格式化输出,每种方法都有代码示例和解释,帮助开发者根据具体需求选择合适的方法
    2025-03-03
  • 在Window系统下安装Netbeans9的方法

    在Window系统下安装Netbeans9的方法

    今天小编就为大家分享一篇关于在Window系统下安装Netbeans9的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Java SE循环一些基本练习题总结

    Java SE循环一些基本练习题总结

    循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,下面这篇文章主要给大家总结介绍了关于Java SE循环一些基本练习题,需要的朋友可以参考下
    2024-03-03
  • MyBatisPlus乐观锁和悲观锁的实现示例

    MyBatisPlus乐观锁和悲观锁的实现示例

    本文主要介绍了MyBatisPlus乐观锁和悲观锁,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-11-11
  • JavaScript中栈和队列应用详情

    JavaScript中栈和队列应用详情

    这篇文章主要介绍了JavaScript中栈和队列应用详情,栈如果用数组模拟的话是类似于一个U形桶状堆栈空间,文章围绕制图展开详细的内容展开更多相关内容,需要的小伙伴可以参考一下
    2022-06-06
  • java利用DFA算法实现敏感词过滤功能

    java利用DFA算法实现敏感词过滤功能

    在最近的开发中遇到了敏感词过滤,便去网上查阅了很多敏感词过滤的资料,在这里也和大家分享一下自己的理解。下面这篇文章主要给大家介绍了关于java利用DFA算法实现敏感词过滤功能的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-06-06
  • java selenium元素定位大全

    java selenium元素定位大全

    本文主要介绍java selenium元素定位,这里整理了selenium元素定位的相关资料,有兴趣的小伙伴可以参考下
    2016-08-08

最新评论