<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                **1. Sort類與Pageable接口** Spring Data Jpa 可以在方法參數中直接傳入`Pageable`或`Sort`來完成動態分頁或排序,通常`Pageable`或`Sort`會是方法的最后一個參數。 ```java List<Student> findBySex(String sex, Sort sort); Page<Student> findBySex(String sex, Pageable pageable); /** * HSQL語句分頁查詢 */ @Query(value = "select s from student s where s.age >= ?1") Page<Student> findByAge(Integer age, Pageable pageable); /** * 原生SQL語句分頁查詢,必須要結合 countQuery 查詢出總數 */ @Query( value = "select * from student where total >= ?1" , countQuery = "select count(id) from student where total >= ?1" , nativeQuery = true ) Page<Student> findByTotal(Integer total, Pageable pageable); ``` <br/> **2. 只排序,不分頁** 可以調用下面重載的4個方法來完成排序規則。 ```java package org.springframework.data.domain; public class Sort implements Streamable<Sort.Order>, Serializable { //默認并且只能升序排序 public static Sort by(String... properties) //同一條語句既可以升序排序,也可以降序排序 public static Sort by(List<Sort.Order> orders) public static Sort by(Sort.Order... orders) //同一條語句只能按照升序,或降序排序 public static Sort by(Sort.Direction direction, String... properties) } ``` ```java @Test public void testSort() { //1. 根據age和height升序排序 Sort sort1 = Sort.by("age", "height"); List<Student> studentList1 = studentRepository.findBySex("男", sort1); System.out.println(studentList1); //[Student(id=1, name=張三, age=19, sex=男, height=170), // Student(id=2, name=張田, age=21, sex=男, height=165), // Student(id=7, name=小明, age=22, sex=男, height=173)] //2. 根據age和height升序排序 Sort sort2 = Sort.by(Sort.Direction.ASC, "age", "height"); List<Student> studentList2 = studentRepository.findBySex("男", sort2); System.out.println(studentList2); //[Student(id=1, name=張三, age=19, sex=男, height=170), // Student(id=2, name=張田, age=21, sex=男, height=165), // Student(id=7, name=小明, age=22, sex=男, height=173)] //3. 先根據age升序排序,然后再根據height降序排序 Sort sort3 = Sort.by(Sort.Order.asc("age"), Sort.Order.desc("height")); List<Student> studentList3 = studentRepository.findBySex("男", sort3); System.out.println(studentList3); //[Student(id=1, name=張三, age=19, sex=男, height=170), // Student(id=2, name=張田, age=21, sex=男, height=165), // Student(id=7, name=小明, age=22, sex=男, height=173)] //4. 先根據age升序排序,然后再根據height降序排序 List<Sort.Order> sortList = new ArrayList<>(2); sortList.add(Sort.Order.asc("age")); sortList.add(Sort.Order.desc("height")); Sort sort4 = Sort.by(sortList); List<Student> studentList4 = studentRepository.findBySex("男", sort4); System.out.println(studentList4); //[Student(id=1, name=張三, age=19, sex=男, height=170), // Student(id=2, name=張田, age=21, sex=男, height=165), // Student(id=7, name=小明, age=22, sex=男, height=173)] } ``` **3. 分頁并排序** 分頁可以調用接口`Pageable`來完成,而`Pageable`可以通過下面3個重載方法來構造。 ```java package org.springframework.data.domain; public class PageRequest extends AbstractPageRequest { //只分頁不排序 public static PageRequest of(int page, int size) //既分頁又排序。排序可以升序也可以降序 public static PageRequest of(int page, int size, Sort sort) //既分頁又排序。排序只能是降序或升序 public static PageRequest of(int page, int size, Direction direction, String... properties) } ``` ```java @Test public void testPageable() { Pageable pageable = PageRequest.of(0, 2, Sort.by(Sort.Order.asc("age"),Sort.Order.desc("height"))); Page<Student> studentPage = studentRepository.findBySex("男", pageable); if(!studentPage.isEmpty()) { //獲取數據 System.out.println(studentPage.getContent()); //[Student(id=1, name=張三, age=19, sex=男, height=170), // Student(id=2, name=張田, age=21, sex=男, height=165)] } } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看