Spring Data JPA 中的 Scroll API
1、概览 Spring Data Commons 是总括 Spring Data project 的一部分,其中包含管理持久层的接口和实现。Scroll API 是 Spring Data Commons 提供的功能之一,用于处理从数据库读取的大型结果。
在本教程中,我们将通过一个示例探索 Scroll API。
2、依赖 Spring Boot 3.1 版本新增了 Scroll API 支持。Spring Data Commons 已包含在 Spring Data JPA 中。因此,添加 Spring Data JPA 3.1 版本就可以获得 Scroll API 功能:
<dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-jpa</artifactId> <version>3.1.0</version> </dependency> 最新的版本可在 Maven 中央仓库 中找到。
3、 Entity 类 例如,我们将使用 BookReview 实体,它包含不同用户对不同书籍的书评评级:
@Entity @Table(name="BOOK_REVIEWS") public class BookReview { @Id @GeneratedValue(strategy= GenerationType.SEQUENCE, generator = "book_reviews_reviews_id_seq") @SequenceGenerator(name = "book_reviews_reviews_id_seq", sequenceName = "book_reviews_reviews_id_seq", allocationSize = 1) private Long reviewsId; private String userId; private String isbn; private String bookRating; // getter 和 setter 方法 } 4、Scroll API Scroll API 提供了分块迭代大型结果的功能。它提供稳定的排序、scroll 类型和结果限制。