Maison  >  Article  >  Java  >  Comment puis-je implémenter la pagination dans Spring Data JPA à l'aide d'annotations ?

Comment puis-je implémenter la pagination dans Spring Data JPA à l'aide d'annotations ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-29 03:04:29250parcourir

How Can I Implement Pagination in Spring Data JPA Using Annotations?

Pagination dans Spring-Data-JPA

Question :

Dans Spring-Data- JPA, comment réaliser la pagination avec des annotations ?

Réponse :

À partir de Spring Data JPA 1.7.0 :

Les mots-clés Top et First permettent la pagination dans les méthodes de requête :

<code class="java">findTop10ByLastnameOrderByFirstnameAsc(String lastname);</code>

Spring Data limitera les résultats en conséquence.

Pour les versions précédentes :

La pagination se fait à l'aide de l'interface Pageable et de l'abstraction Page :

<code class="java">public interface UserRepository extends Repository<User, Long> {
  List<User> findByUsername(String username, Pageable pageable);
}

Pageable topTen = new PageRequest(0, 10);
List<User> result = repository.findByUsername("Matthews", topTen);</code>

Si des informations de contexte sont nécessaires, utilisez Page comme type de retour :

<code class="java">public interface UserRepository extends Repository<User, Long> {
  Page<User> findByUsername(String username, Pageable pageable);
}

Pageable topTen = new PageRequest(0, 10);
Page<User> result = repository.findByUsername("Matthews", topTen);</code>

L'utilisation de Page nécessite le déclenchement d'un décompte requête de projection pour calculer les métadonnées. Assurez-vous que PageRequest contient des informations de tri pour obtenir des résultats stables.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn