springboot使用Mybatis-plus分页插件的案例详解
作者:桑稚远方~ 时间:2023-10-27 13:47:43
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 分页插件了
来源:https://blog.csdn.net/weixin_59367964/article/details/130540257
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
java8 forEach结合Lambda表达式遍历 List操作
Java多线程run方法中直接调用service业务类应注意的问题及解决
![](https://img.aspxhome.com/file/2023/0/92680_0s.png)
基于集合的子集与集合的全排列的相关问题
C#文件合并的方法
Android判断手机是否联网及自动跳转功能(收藏版)
![](https://img.aspxhome.com/file/2023/0/138910_0s.png)
SpringCloud Eureka搭建的方法步骤
![](https://img.aspxhome.com/file/2023/1/61241_0s.jpg)
java实现计算器功能
![](https://img.aspxhome.com/file/2023/0/81980_0s.jpg)
Android WebView 常见问题及处理方案
对Java ArrayList的自动扩容机制示例讲解
WPF+SkiaSharp实现自绘弹幕效果
![](https://img.aspxhome.com/file/2023/6/98186_0s.gif)
C#抽象类与抽象方法详解
![](https://img.aspxhome.com/file/2023/0/96420_0s.jpg)
Android 限制edittext 整数和小数位数 过滤器(详解)
解析Java中的static关键字
![](https://img.aspxhome.com/file/2023/0/66040_0s.png)
微信小程序微信登录的实现方法详解(JAVA后台)
![](https://img.aspxhome.com/file/2023/0/58370_0s.jpg)
为什么mybatis中的SqlSession一定要关闭
![](https://img.aspxhome.com/file/2023/7/85567_0s.png)
SpringBoot登录判断过程代码实例
Springboot项目引入druid安装部署使用教程
![](https://img.aspxhome.com/file/2023/5/57625_0s.png)
C#常用目录文件操作类实例
Android BottomNavigationView底部导航效果
![](https://img.aspxhome.com/file/2023/0/137720_0s.jpg)
Android 仿今日头条简单的刷新效果实例代码
![](https://img.aspxhome.com/file/2023/4/137764_0s.gif)