springboot使用分頁(yè)插件pagehelper

方式一:使用原生的PageHelper

1.在pom.xml中引入依賴


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

2.在springboot的啟動(dòng)類(lèi)(Application.java)里面注入配置


@Bean

    PageHelper pageHelper(){

        //分頁(yè)插件

        PageHelper pageHelper = new PageHelper();

        Properties properties = new Properties();

        properties.setProperty("reasonable", "true");

        properties.setProperty("supportMethodsArguments", "true");

        properties.setProperty("returnPageInfo", "check");

        properties.setProperty("params", "count=countSql");

        pageHelper.setProperties(properties);

        //添加插件

        new SqlSessionFactoryBean().setPlugins(new Interceptor[]{pageHelper});

        return pageHelper;

    }

方式二:使用PageHelper的starter

1.在pom.xml中引入依賴


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

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


#pagehelper分頁(yè)插件配置

pagehelper.helperDialect=mysql

pagehelper.reasonable=true

pagehelper.supportMethodsArguments=true

pagehelper.params=count=countSql

使用方法:

1.在查詢語(yǔ)句之前插入下列語(yǔ)句:


PageHelper.startPage(pageNum, pageSize);

2.屬性介紹:


System.out.println("當(dāng)前頁(yè):"+pageInfo.getPageNun());

System.out.println("每頁(yè)顯示記錄數(shù):"+pageInfo.getPageSize());

System.out.println("總頁(yè)數(shù):"+pageInfo.getPages());

System.out.println("總記錄數(shù):"+pageInfo.getTotal());

System.out.println("是否有上一頁(yè):"+pageInfo.isHasPreviousPage());

System.out.println("是否有下一頁(yè):"+pageInfo.isHasNextPage());

System.out.println("導(dǎo)航頁(yè)面:"+Arrays.toString(pageInfo.getNavigatepageNums()));

例如:

1.在service層寫(xiě)入


public PageInfo<VisitorRecord> getVisitorRecordByCondition(Map<String, Object> condition, int pageNum,Integer pageSize) {

        PageHelper.startPage(pageNum, pageSize);

        List<VisitorRecord> visitorRecord = visitorRecordDao.getVisitorRecordByCondition(condition);

        PageInfo<VisitorRecord> pageInfo = new PageInfo<>(visitorRecord);

        return pageInfo;

}

2.控制器層


PageInfo<VisitorRecord> visitorRecord = visitorRecordService.getVisitorRecordByCondition(condition, pageNumber / pageSize + 1, pageSize);

System.out.println("總記錄數(shù):"+visitorRecord.getTotal());

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容