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


猜你喜欢
- 前言我们常说的字符串为空,其实就是一个没有字符的空数组。比如:String a = "";a 就可以称为是一个空字符串。
- 使用java基础类写的一个简单的zip压缩解压工具类package sun.net.helper;import java.io.*;impo
- 下面是配置Android开发ADB环境变量的操作步骤。工具/原料win7系统电脑+Android SDK方法/步骤1.首先右击计算机——属性
- 1、xml代码:<?xml version="1.0" encoding="utf-8"?&g
- ID说明 设备唯一标识符(UDID):设备唯一硬件标识,设备生产时根据特定的硬件信息生成,可用于设备的生产环境及合法性校验。不对第
- 前提:微信公众平台:注册微信认证的公众号也就是服务号 ,拥有跟高级权限的微信接口。(注册服务号需要一些企业信息,需自己或者公司解决)注: 2
- JenkinsJenkins是一个开源的、可扩展的持续集成、交付、部署的基于web界面的平台。允许持续集成和持续交付项目,无论用的是什么平台
- 实现Android studio设置自动导包及自动导包快捷键方式一:Android studio只有导单个包的快捷键:Alt+Enter。方
- 本文实例分析了java遍历Map的几种方法。分享给大家供大家参考,具体如下:Java代码:Map<String,String>
- 下面给大家介绍几种比较常见的解决办法,具体内容如下:1.有时候eclipse不自动编译,把project clean一下,让R.java重新
- 一、 springBoot + Mybatis配置完成后,访问数据库遇到的问题首先出现这个问题,肯定是xml文件与mapper接口没有匹配上
- 本文实例中的自定义类PictureBox继承于UserControl,最终实现简单的分屏功能。分享给大家供大家参考之用。具体实现代码如下:p
- 一、组件生命周期flutter组件只有两种:有状态和无状态组件。由于无状态组件效率高,如果不涉及到组件内部的数据存储,尽量多的使用无状态组件
- 多线程@Async的使用体验场景导入:可以将大批量的数据insert操作采用多线程的方式并行执行第三方服务的接口调用:由于存在个别第三方服务
- 本文实例讲述了Android使用ActionBar和ViewPager切换页面,分享给大家供大家参考。具体如下:运行效果截图如下:项目布局如
- 正文 #方法一:使用string.Contains方法string.Contains是大小写敏感的,如果要用该方法来判断一个str
- 一、简介在现阶段的Android开发中,注解越来越流行起来,比如ButterKnife,Retrofit,Dragger,EventBus等
- 本来是想写一篇《委托与lambda表达式的前世今生》,但仅委托部分已经写了很多内容,于是就此分开关于Lambda表达是的内容后续再写吧。不知
- 导航是指支持用户导航、进入和退出应用中不同内容片段的交互。Android Jetpack 的导航组件可帮助您实现导航,无论是简单的按钮点击,
- 废话不多说了,直接给大家贴代码了,具体代码如下所述:/*** 把一个View的对象转换成bitmap*/private Bitmap get