springboot+PageHelper实现物理分页

1.pom

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

2.配置类

import com.github.pagehelper.PageHelper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.Properties;


@Configuration
public class MybatisConfig {

    @Bean
    public PageHelper pageHelper() {
        System.out.println("MyBatisConfiguration.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;
    }
}

3.使用

 //pageHelper下一条sql会进行分页,第一个参数是第几页,第二个参数是每页显示条数
 PageHelper.startPage(page,limit);
 List<CardBean> list = cardDao.selectList();

 //分页后list.size是分页后的,强转Page类型,里面有count信息
 Page<CardBean> count = (Page<CardBean>)list;

Page包含了非常全面的分页属性:
page.getPageNum();
page.getPageSize();
page.getStartRow();
page.getEndRow();
page.getTotal();
page.getPages();
page.getFirstPage();
page.getLastPage();
page.isFirstPage();
page.isLastPage();

page.isHasPreviousPage();

page.isHasNextPage();

如有不对欢迎指正。

猜你喜欢

转载自blog.csdn.net/the_knife/article/details/79452865