idea使用pagehelper實現後端分頁功能
阿新 • • 發佈:2020-12-30
第一步:在pom.xml中新增依賴
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.12</version> </dependency>
第二步:在idea的配置檔案中新增相關配置:
pagehelper.helperDialect=mysql pagehelper.reasonable=true pagehelper.supportMethodsArguments=true pagehelper.params=count=countSql
第三步:在Dao層編寫程式
/** *分頁形式查詢所有的使用者資訊 * @return */ @Select("select * from user") public List<Map<String,Object>> QueryPageUsers();
第四步:在服務層編寫程式:
/** * 分頁查詢所有使用者 * @param pagenum * @param pagesize * @return */ List<Map<String,Object>> FindUsers(intpagenum,int pagesize);
第五步:在服務實現層編寫程式碼
/** * 分頁形式查詢所有的使用者 * @param pagenum * @param pagesize * @return */ public List<Map<String, Object>> FindUsers(int pagenum, int pagesize) { PageHelper.startPage(pagenum,pagesize); List<Map<String, Object>> maps = selectUser.QueryPageUsers();return maps; }
第六步:在Controller層編寫程式碼:
/** * 分頁形式查詢所有的使用者 * @param pagenum * @param pagesize * @return */ @RequestMapping(value = "GetPageUsers",method = RequestMethod.POST) public @ResponseBody PageInfo<Map<String, Object>> GetPageUsers(int pagenum,int pagesize){ List<Map<String, Object>> maps = getUserservice.FindUsers(pagenum, pagesize); PageInfo<Map<String, Object>> pagets = new PageInfo<Map<String, Object>>(maps); return pagets; }
第七步:使用Postman進行測試,結果如下:
{ "total": 6, "list": [ { "pass": "user", "level": 1, "sex": "男", "name": "user", "id": "1001", "age": 21 }, { "pass": "admin", "level": 10, "sex": "女", "name": "admin", "id": "1002", "age": 23 } ], "pageNum": 1, "pageSize": 2, "size": 2, "startRow": 1, "endRow": 2, "pages": 3, "prePage": 0, "nextPage": 2, "isFirstPage": true, "isLastPage": false, "hasPreviousPage": false, "hasNextPage": true, "navigatePages": 8, "navigatepageNums": [ 1, 2, 3 ], "navigateFirstPage": 1, "navigateLastPage": 3 }