How do you perform pagination and sorting with Spring Data JPA?

How do you perform pagination and sorting with Spring Data JPA?

A) By using the Pageable and Sort interfaces
B) By writing custom SQL queries
C) By using the @Query annotation
D) By using the @Pageable annotation

Answer:

A) By using the Pageable and Sort interfaces

Explanation:

Spring Data JPA provides built-in support for pagination and sorting through the Pageable and Sort interfaces. These interfaces allow you to easily paginate and sort the results of database queries without writing custom SQL.

For example:


public interface UserRepository extends JpaRepository<User, Long> {

    Page<User> findAll(Pageable pageable);

    List<User> findAll(Sort sort);
}

In this example, the findAll(Pageable pageable) method returns a paginated list of users, while the findAll(Sort sort) method returns a sorted list of users. You can create a Pageable object to specify the page number, page size, and sort order:


Pageable pageable = PageRequest.of(0, 10, Sort.by("name").ascending());
Page<User> users = userRepository.findAll(pageable);

Here, the PageRequest.of(0, 10, Sort.by("name").ascending()) creates a Pageable object that retrieves the first page of users (10 users per page) sorted by the “name” field in ascending order.

The Pageable and Sort interfaces simplify pagination and sorting in Spring Data JPA, making it easy to implement these features in your applications.

Reference links:

Spring Data JPA Tutorial

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top