線上直播原始碼,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
- 線上直播原始碼,修改預設的箭頭的兩種方式原始碼
- 線上直播原始碼,VUE 獲獎名單滾動顯示的兩種方式原始碼Vue
- Java中Elasticsearch 實現分頁方式(三種方式)JavaElasticsearch
- 影片直播原始碼,uniapp頁面跳轉的幾種方法和區別原始碼APP
- 線上直播系統原始碼,當前版本號頁面呈現原始碼
- 影片直播系統原始碼,java中Map遍歷的三種方式原始碼Java
- Flutter 頁面間資料傳遞(共享)的幾種常用方式Flutter
- 117 遠端連線mysql資料庫的幾種方式MySql資料庫
- 直播系統原始碼的收益方式你知道幾點?原始碼
- 直播商城原始碼,商品展示分為視訊和圖片展示兩種方式原始碼
- Express 提交資料的幾種方式Express
- app直播原始碼,android中幾種常用的彈框APP原始碼Android
- 遍歷資料夾的幾種方式
- 基於Sql server資料庫的四種分頁方式總結SQLServer資料庫
- oracle資料庫透過sqlplus連線的幾種方式介紹Oracle資料庫SQL
- 網頁佈局------幾種佈局方式網頁
- 398、Java框架52 -【Hibernate - 分頁、兩種獲取方式】 2020.10.27Java框架
- Java裡連線字串的幾種方式以及優缺點Java字串
- SpringBoot讀取配置資料的幾種方式Spring Boot
- 資料庫SQL調優的幾種方式資料庫SQL
- MySql資料庫備份的幾種方式MySql資料庫
- 資料庫訪問幾種方式對比資料庫
- 檔案上傳的幾種方式
- 程式碼迭代的幾種方式
- 線上直播原始碼,完整登陸頁面的全部資訊(包括使用者名稱、輸入密碼等)原始碼密碼
- 線上直播系統原始碼,簡單實現Android應用的啟動頁原始碼Android
- 線上直播系統原始碼,實現翻頁載入、下拉滾動載入原始碼
- 線上直播系統原始碼,個人主頁使用者標籤新增實現原始碼
- JAVA - mongodb 聚合幾種查詢方式JavaMongoDB
- 線上直播系統原始碼,自定義底部 BottomNavigationBar原始碼Navigation
- 線上直播原始碼,自定義氣泡效果(BubbleView)原始碼View
- 直播平臺原始碼,JavaScript 的四種除錯輸出方式原始碼JavaScript除錯
- Html中引用其他html頁面的幾種方式HTML
- flask返回資料的幾種方式(字串,json,元祖)Flask字串JSON
- Python資料儲存方式有幾種?如何使用?Python