中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring Data JPA實現分頁Pageable的實例代碼

發布時間:2020-10-20 04:06:14 來源:腳本之家 閱讀:276 作者:wayne 欄目:編程語言

在JPA中提供了很方便的分頁功能,那就是Pageable(org.springframework.data.domain.Pageable)以及它的實現類PageRequest(org.springframework.data.domain.PageRequest),詳細的可以見示例代碼。

1、改變CustomerRepository方法​

  /**
   * 一個參數,匹配兩個字段
   * @param name2
   * @Param pageable 分頁參數
   * @return
   * 這里Param的值和=:后面的參數匹配,但不需要和方法名對應的參數值對應
   * 這里增加了@QueryHints注解,是給查詢添加一些額外的提示
   * 比如當前的name值為HINT_COMMENT是在查詢的時候帶上一些備注信息
   */
  @QueryHints(value = { @QueryHint(name = HINT_COMMENT, value = "a query for pageable")})
  @Query("select c from Customer c where c.firstName=:name or c.lastName=:name")
  Page<Customer> findByName(@Param("name") String name2,Pageable pageable);

2、增加CustomerController方法pageable

  /**
   * 分頁
   * 應用查詢提示@QueryHints,這里是在查詢的適合增加了一個comment
   * 查詢結果是lastName和firstName都是bauer這個值的數據
   */
  @RequestMapping("/pageable")
  public void pageable(){
    //Pageable是接口,PageRequest是接口實現
    //PageRequest的對象構造函數有多個,page是頁數,初始值是0,size是查詢結果的條數,后兩個參數參考Sort對象的構造方法
    Pageable pageable = new PageRequest(0,3, Sort.Direction.DESC,"id");
    Page<Customer> page = repository.findByName("bauer",pageable);
    //查詢結果總行數
    System.out.println(page.getTotalElements());
    //按照當前分頁大小,總頁數
    System.out.println(page.getTotalPages());
    //按照當前頁數、分頁大小,查出的分頁結果集合
    for (Customer customer: page.getContent()) {
      System.out.println(customer.toString());
    }
    System.out.println("-------------------------------------------");
  }

從示例代碼的注釋當中可以看到Page對象的相關參數及值的說明,更詳細的用法,參考PageRequest源碼。

小結:怎么樣,是不是很簡單很方便?!

 參考:

官方文檔,http://docs.spring.io/spring-data/jpa/docs/current/reference/html/

DEMO,https://github.com/icnws/spring-data-jpa-demo

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鲁山县| 正安县| 安仁县| 磴口县| 恩施市| 布拖县| 和平县| 成安县| 牟定县| 大埔县| 西乌珠穆沁旗| 南城县| 曲沃县| 都江堰市| 沙田区| 徐闻县| 泗水县| 新兴县| 石门县| 陆川县| 玉门市| 苏尼特左旗| 金昌市| 运城市| 梅河口市| 武义县| 聂拉木县| 化德县| 虎林市| 辽宁省| 潞西市| 泾阳县| 汝南县| 大余县| 广灵县| 呼图壁县| 临沧市| 峡江县| 伊宁县| 浏阳市| 布尔津县|