當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringBoot集成MyBatis的分页插件PageHelper
生活随笔
收集整理的這篇文章主要介紹了
SpringBoot集成MyBatis的分页插件PageHelper
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【寫在前面】
項目的后臺管理系統需要展示所有資源信息,select * 雖然方便但數據量過于龐大會嚴重降低查找效率,頁面加載慢,用戶體驗差。分頁自然是必要選擇,但原生的方法過于繁雜。MyBatis的分頁插件PageHelper和SpringBoot的集成是更好的選擇,它的使用非常簡單,開發更為高效。
代碼如下
一、pom文件導入依賴
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.5</version></dependency>二、配置application.yml
##pagehelper分頁插件 pagehelper:helperDialect: mysqlreasonable: truesupportMethodsArguments: trueparams: count=countSql三、編寫PageRequest、PageResult 實體類
package com.jxnu.os.model;/*** @author xiao*/ public class PageRequest {/*** 當前頁碼*/private int pageNum;/*** 每頁數量*/private int pageSize;public int getPageNum() {return pageNum;}public void setPageNum(int pageNum) {this.pageNum = pageNum;}public int getPageSize() {return pageSize;}public void setPageSize(int pageSize) {this.pageSize = pageSize;} } package com.jxnu.os.model;import java.util.List;/*** @author xiao*/ public class PageResult {/*** 當前頁碼*/private int pageNum;/*** 每頁數量*/private int pageSize;/*** 記錄總數*/private long totalSize;/*** 頁碼總數*/private int totalPages;/*** 數據模型*/private List<?> content;public int getPageNum() {return pageNum;}public void setPageNum(int pageNum) {this.pageNum = pageNum;}public int getPageSize() {return pageSize;}public void setPageSize(int pageSize) {this.pageSize = pageSize;}public long getTotalSize() {return totalSize;}public void setTotalSize(long totalSize) {this.totalSize = totalSize;}public int getTotalPages() {return totalPages;}public void setTotalPages(int totalPages) {this.totalPages = totalPages;}public List<?> getContent() {return content;}public void setContent(List<?> content) {this.content = content;} }四、service層 編寫findPage、PageInfo方法
public PageResult findPage(PageRequest pageRequest,Integer p_id) {return PageUtils.getPageResult(pageRequest, getPageInfo(pageRequest,p_id));}/*** 調用分頁插件完成分頁* @param pageRequest* @return*/private PageInfo<Resource> getPageInfo(PageRequest pageRequest,Integer p_id) {int pageNum = pageRequest.getPageNum();int pageSize = pageRequest.getPageSize();PageHelper.startPage(pageNum, pageSize);List<Resource> resources = resourceMapper.selectPage(p_id);return new PageInfo<Resource>(resources);}五、controller層編寫findPage方法
@PostMapping(value="/findPage")public Object findPage(@RequestBody(required = false) PageRequest pageQuery,Integer p_id) {//System.out.println(pageQuery.getPageNum());//System.out.println(p_id);return resourceService.findPage(pageQuery,p_id);}ok ,大功告成!
總結
以上是生活随笔為你收集整理的SpringBoot集成MyBatis的分页插件PageHelper的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机网络(二十七)-IPv4
- 下一篇: 数据库高级知识——主从复制