springboot使用Mybatis-plus分页插件

news/2024/12/22 13:55:34/

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 {@Autowiredprivate UserMapper userMapper;@Overridepublic 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 分页插件了


http://www.ppmy.cn/news/75296.html

相关文章

拿两个字母就能注册商标了吗?

我们来关注一些常见的又让人有点捂脸的现象。比如说&#xff0c;用几个字母或者一个单词注册商标。 黄小明我在办案中就遇到了一个这样的问题。该公司的注册商标被人使用在了一模一样的商品上&#xff0c;然后损失很大&#xff0c;然后该公司就报了警&#xff0c;警察就去把卖假…

Unity UI -- (5)增加基础按钮功能

分析分析一些常见UI 良好的UI设计会清晰地和用户沟通。用户知道他们能和屏幕上哪些东西交互&#xff0c;哪些不能。如果他们进行了交互&#xff0c;他们也要清楚地知道交互是否成功。换句话说&#xff0c;UI要提供给用户很多反馈。 我们可以来看看在Unity里或者在计算机上的任何…

【5.20】五、安全测试——渗透测试

目录 5.3 渗透测试 5.3.1 什么是渗透测试 5.3.2 渗透测试的流程 5.3 渗透测试 5.3.1 什么是渗透测试 渗透测试是利用模拟黑客攻击的方式&#xff0c;评估计算机网络系统安全性能的一种方法。这个过程是站在攻击者角度对系统的任何弱点、技术缺陷或漏洞进行主动分析&#x…

Java中基础数据类型与包装数据类型

文章目录 基础数据类型与包装数据类型有哪些&#xff1f;为什么会有包装数据类型&#xff1f;基础数据类型与包装数据类型两者的区别?包装数据类型的相关方法&#xff1f; 基础数据类型与包装数据类型有哪些&#xff1f; 基本数据类型对应的包装数据类型byteByteshortShortin…

微服务---Redis实用篇-黑马头条项目-优惠卷秒杀功能(使用java阻塞队列对秒杀进行异步优化)

Redis实用篇-黑马头条项目-优惠卷秒杀功能(使用java阻塞队列对秒杀进行异步优化) 1、秒杀优化 1.1 秒杀优化-异步秒杀思路 我们来回顾一下下单流程 当用户发起请求&#xff0c;此时会请求nginx&#xff0c;nginx会访问到tomcat&#xff0c;而tomcat中的程序&#xff0c;会进…

1194: 7208 遍历迷宫

题目描述 迷宫导航是人工智能领域一个常见的问题&#xff0c;迷宫中有走廊和墙壁&#xff0c;机器人可以通过走廊&#xff0c;但不能穿过墙壁。 输入 输入数据文件包含多个测试数据。 每个测试数据的第一行是两个整数&#xff1a;M和N&#xff0c;表示迷宫的大小&#xff0c…

回归分析-简单线性回归推导

回归分析-简单线性回归模型 在大数据分析中&#xff0c;回归分析是一种预测性的建模技术&#xff0c;它研究的是因变量&#xff08;目标&#xff09;和自变量&#xff08;预测器&#xff09;之间的关系。这种技术通常用于预测分析&#xff0c;时间序列模型以及发现变量之间的因…

什么是Java中的Lambda表达式?

在Java 8中引入了Lambda表达式&#xff0c;它是一种匿名函数&#xff0c;可以作为参数传递给方法或存储在变量中。Lambda表达式使得编写简洁、灵活的代码成为可能&#xff0c;并促进了函数式编程在Java中的使用。 Lambda表达式的基本语法如下&#xff1a; javaCopy code (par…