Springboot之PageHelper分页插件的使用

本文介绍在SpringBoot项目中如何正确配置和使用PageHelper分页插件,包括原生PageHelper和PageHelper Starter两种方式,解决分页功能不生效的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在使用springboot写程序的时候,用到了 pagehelper分页插件,但是会出现不分页的情况。根据网上的经验,总结了如下两种方式

方式一 原生的pagehelper

1.在pom.xml中引入依赖

<dependency>
       <groupId>com.github.pagehelper</groupId>      
       <artifactId>pagehelper</artifactId
       <version>4.1.3</version>
</dependency>            

2.配置pagehelper

import java.util.Properties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.github.pagehelper.PageHelper;
  
@Configuration
public class PageHelperConfig {
    @Bean
    public PageHelper pageHelper() {
        PageHelper pageHelper = new PageHelper();
        Properties p = new Properties();
        p.setProperty("offsetAsPageNum", "true");
        p.setProperty("rowBoundsWithCount", "true");
        p.setProperty("reasonable", "true");
        pageHelper.setProperties(p);
        return pageHelper;
    }
}

方式二 pagehelper的starter

1.在pom.xml中引入依赖

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

2.在application.properties配置pagehelper的属性

pagehelper.helperDialect=mysql
#分页参数合理化
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql码片

3.在controller类中实现分页

public String getEmps(Model model) {
		PageHelper.startPage(1, 5);//第一个参数:当前页数,第二个参数:查询的条数
		// 注意:分页仅对startPage方法后的第一条查询语句有效
		List<Emp> emps = empService.getAll();
		// 使用pageInfo包装查询后的结果,只需要将pageInfo交给页面就行了。
		PageInfo<Emp> page = new PageInfo<Emp>(emps, 5);
		model.addAttribute("pageInfo", page);
		return "list";//配置了前后缀,返回jsp页面
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值