SpringBoot調用PageHelper.startPage(Object params)報錯:分頁查詢缺少必要的參數:XXX

問題描述:

項目中使用了MyBatis分頁插件,調用以下方法實現分頁,無論傳入JavaBean還是Map都報錯:分頁查詢缺少必要的參數:XXX

Map<String, Object> params = new HashMap<String, Object>();
params.put("pageNum", 1);
params.put("pageSize", 10);

PageHelper.startPage(Object params);

 

pom依賴如下:

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

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

 

properties分頁配置如下:

#pageHelper configuration
pagehelper.helperDialect=mysql
pagehelper.reasonable=false
pagehelper.supportMethodsArguments=false
pagehelper.offsetAsPageNum=true
pagehelper.rowBoundsWithCount=true
pagehelper.pageSizeZero=true
pagehelper.params=pageNum=pageHelperStart;pageSize=pageHelperRows;count=countSql

 

錯誤原因:

pagehelper.params配置的參數值,和Map的key值或JavaBean的屬性名不一致

pagehelper.params
爲了支持startPage(Object params)方法,增加了該參數來配置參數映射,用於從對象中根據屬性名取值
可以配置:pageNum,pageSize,count,pageSizeZero,reasonable  若不配置則使用默認值
默認值爲:pageNum=pageNum;pageSize=pageSize;count=countSql;reasonable=reasonable;pageSizeZero=pageSizeZero

 

解決方案:

不使用pagehelper.params參數,Map的key值或JavaBean的屬性名,要與pagehelper.params默認值保持一致

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章