SpringBoot引入分页插件PageHelper

闪耀之星喵 2024-05-19 ⋅ 26 阅读

简介

在开发中,常常会遇到需要对数据库中的数据进行分页查询的场景。为了简化分页查询的实现,开发者可以引入PageHelper分页插件。SpringBoot作为一种快速开发框架,提供了与PageHelper的整合功能,方便进行分页查询。

引入依赖

首先,在SpringBoot项目的pom.xml文件中添加以下依赖:

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.2.14</version>
</dependency>

配置文件设置

接下来,在SpringBoot项目的配置文件application.properties或application.yml中进行配置:

# 设置分页插件
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true

在上面的配置中,以MySQL数据库为例,pagehelper.helperDialect设置为mysql,pagehelper.reasonable设置为true表示开启合理化查询,pagehelper.supportMethodsArguments设置为true表示支持通过Mapper接口参数来传递分页参数。

使用

在进行分页查询的方法上加上@PageHelper注解,并传入分页参数即可:

@Service
public class UserService {
	
	@Autowired
	private UserMapper userMapper;
	
	@PageHelper(pageNum = 1,pageSize = 10) // pageNum表示当前页码,pageSize表示每页显示数量
	public List<User> getUserList() {
		return userMapper.getUserList();
	}
}

分页结果返回

PageHelper会自动拦截Mapper接口的方法,并执行分页查询,将返回的结果封装为Page类型,可以通过Page类获取分页信息:

@Service
public class UserService {
	
	@Autowired
	private UserMapper userMapper;
	
	@PageHelper(pageNum = 1,pageSize = 10) // pageNum表示当前页码,pageSize表示每页显示数量
	public PageInfo<User> getUserList() {
		List<User> userList = userMapper.getUserList();
		return new PageInfo<>(userList);
	}
}

可以使用PageInfo类来对分页结果进行操作,如获取总记录数、总页数等。

小结

通过引入SpringBoot分页插件PageHelper,我们可以简化分页查询的实现。只需要在方法上加上注解,并传入分页参数,即可实现分页查询功能。同时,PageHelper还提供了丰富的功能,如自动拦截Mapper接口、提供PageInfo类等,方便开发者进行分页结果的操作。

欢迎关注我的博客,https://www.example.com,有更多关于SpringBoot和分页插件PageHelper的文章哦!


全部评论: 0

    我有话说: