您现在的位置是:首页 >技术杂谈 >springboot使用Mybatis-plus分页插件网站首页技术杂谈
springboot使用Mybatis-plus分页插件
简介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 分页插件了
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。





U8W/U8W-Mini使用与常见问题解决
QT多线程的5种用法,通过使用线程解决UI主界面的耗时操作代码,防止界面卡死。...
stm32使用HAL库配置串口中断收发数据(保姆级教程)
分享几个国内免费的ChatGPT镜像网址(亲测有效)
Allegro16.6差分等长设置及走线总结