線上直播原始碼,java資料分頁幾種方式
線上直播原始碼,java資料分頁幾種方式
1.使用PageUtils
Service: /** * 分頁查詢 * * @param params 查詢條件 * @return PageUtils */ PageUtils queryPage(Map<String, Object> params); ServiceImpl: Page<資料庫物件實體> page = this.selectPage( new Query<資料庫物件實體>(params).getPage(), new EntityWrapper<資料庫物件實體>() //MybatisPlus sql語句 .eq(欄位,"匹配值") //具體用法詳情百度 .orderBy(按照排序的資料庫欄位, true) ); return new PageUtils(page);
2.使用Page
Service: /** * 分頁查詢 * @param params 查詢條件 * @return */ Page<資料庫物件實體> queryPage(Map<String, Object> params); ServiceImpl: Page<資料庫物件實體> page = new Page<>(Public.mapTo(params.get("page"), 1), Public.mapTo(params.get("pageSize"), 10)); //可以手寫sql,提高sql的靈活性(但是題主人懶,還是喜歡使用 MysqlbatisPlus 那種方式),但是可以鍛鍊你的SQL書寫能力 List<資料庫物件實體> list = Dao.方法名(page, params); Page<資料庫物件實體> pageInfo = page.setRecords(list); return pageInfo; Dao: List<資料庫物件實體> 方法名 (Pagination page,Map<String, Object> map); //具體的SQL就不寫了
3.Jpa分頁
需要一個分頁類 Page4Navigator
Page<T> pageFromJPA; int navigatePages; int totalPages; int number; long totalElements; int size; int numberOfElements; List<T> content; boolean isHasContent; boolean first; boolean last; boolean isHasNext; boolean isHasPrevious; int[] navigatepageNums; public Page4Navigator() { //這個空的分頁是為了 Redis 從 json格式轉換為 Page4Navigator 物件而專門提供的 } public Page4Navigator(Page<T> pageFromJPA,int navigatePages) { this.pageFromJPA = pageFromJPA; this.navigatePages = navigatePages; totalPages = pageFromJPA.getTotalPages(); number = pageFromJPA.getNumber() ; totalElements = pageFromJPA.getTotalElements(); size = pageFromJPA.getSize(); numberOfElements = pageFromJPA.getNumberOfElements(); content = pageFromJPA.getContent(); isHasContent = pageFromJPA.hasContent(); first = pageFromJPA.isFirst(); last = pageFromJPA.isLast(); isHasNext = pageFromJPA.hasNext(); isHasPrevious = pageFromJPA.hasPrevious(); calcNavigatepageNums(); } private void calcNavigatepageNums() { int navigatepageNums[]; int totalPages = getTotalPages(); int num = getNumber(); //當總頁數小於或等於導航頁碼數時 if (totalPages <= navigatePages) { navigatepageNums = new int[totalPages]; for (int i = 0; i < totalPages; i++) { navigatepageNums[i] = i + 1; } } else { //當總頁數大於導航頁碼數時 navigatepageNums = new int[navigatePages]; int startNum = num - navigatePages / 2; int endNum = num + navigatePages / 2; if (startNum < 1) { startNum = 1; //(最前navigatePages頁 for (int i = 0; i < navigatePages; i++) { navigatepageNums[i] = startNum++; } } else if (endNum > totalPages) { endNum = totalPages; //最後navigatePages頁 for (int i = navigatePages - 1; i >= 0; i--) { navigatepageNums[i] = endNum--; } } else { //所有中間頁 for (int i = 0; i < navigatePages; i++) { navigatepageNums[i] = startNum++; } } } this.navigatepageNums = navigatepageNums; }
以上就是 線上直播原始碼,java資料分頁幾種方式,更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2950943/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 直播軟體原始碼,java資料分頁幾種方式原始碼Java
- 直播系統原始碼,MAP的幾種取資料的方式原始碼
- 線上直播原始碼,flutter 溢位幾種佈局方案原始碼Flutter
- 線上直播原始碼,修改預設的箭頭的兩種方式原始碼
- Java中Elasticsearch 實現分頁方式(三種方式)JavaElasticsearch
- 線上直播原始碼,VUE 獲獎名單滾動顯示的兩種方式原始碼Vue
- 影片直播系統原始碼,java中Map遍歷的三種方式原始碼Java
- 影片直播原始碼,uniapp頁面跳轉的幾種方法和區別原始碼APP
- 直播商城原始碼,商品展示分為視訊和圖片展示兩種方式原始碼
- 直播系統原始碼的收益方式你知道幾點?原始碼
- Flutter 頁面間資料傳遞(共享)的幾種常用方式Flutter
- MySql、SqlServer、Oracle 三種資料庫查詢分頁方式MySqlServerOracle資料庫
- 三種SQL分頁方式SQL
- Express 提交資料的幾種方式Express
- 線上直播系統原始碼,當前版本號頁面呈現原始碼
- 遍歷資料夾的幾種方式
- app直播原始碼,android中幾種常用的彈框APP原始碼Android
- 基於Sql server資料庫的四種分頁方式總結SQLServer資料庫
- 網頁佈局------幾種佈局方式網頁
- MySql資料庫備份的幾種方式MySql資料庫
- 資料庫SQL調優的幾種方式資料庫SQL
- mybatis連線資料庫的幾種方式MyBatis資料庫
- 做微博大資料廣告的幾種方式大資料
- 直播原始碼網站,直播間小遊戲java遞迴的實現方式原始碼網站遊戲Java遞迴
- 直播平臺原始碼,JavaScript 的四種除錯輸出方式原始碼JavaScript除錯
- 程式碼迭代的幾種方式
- JAVA - mongodb 聚合幾種查詢方式JavaMongoDB
- Java檔案下載 幾種方式Java
- Html中引用其他html頁面的幾種方式HTML
- 直播商城原始碼,實現左右聯動商品分類頁面原始碼
- Hadoop-寫入資料的幾種方式Hadoop
- 手機直播原始碼,JS實現頁面下拉載入資料操作原始碼JS
- 分頁按頁碼讀取redis資料Redis
- 分頁元件原始碼分享元件原始碼
- java md5加密的幾種方式Java加密
- Java中型別判斷的幾種方式Java型別
- java開發webservice幾種方式小結JavaWeb
- Java檔案下載的幾種方式Java