Spring-Data-JPA のページネーション
質問:
Spring-Data- JPA、アノテーションを使用してページネーションをどのように実現できますか?
答え:
Spring Data JPA 1.7.0 以降:
Top キーワードと First キーワードにより、クエリ メソッドでページネーションが可能になります:
<code class="java">findTop10ByLastnameOrderByFirstnameAsc(String lastname);</code>
Spring Data はそれに応じて結果を制限します。
以前のバージョンの場合:
ページ分割は、Pageable インターフェイスと 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>
コンテキスト情報が必要な場合は、戻り値の型として Page を使用します:
<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>
Page を使用するにはカウントをトリガーする必要がありますメタデータを計算するための射影クエリ。安定した結果を得るには、PageRequest に並べ替え情報が含まれていることを確認してください。
以上が注釈を使用して Spring Data JPA でページネーションを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。