使用Spring Boot Starter数据jpa批量获取和使用数据

时间:2019-02-15 02:28:45

标签: java spring spring-boot spring-data-jpa

我正在尝试使用Spring Boot Starter Data JPA的JpaRepository创建存储库,如下所示。

@Repository
public interface CustomerRepository
        extends JpaRepository<CustomerData, CustomerKey> {

    String FIND_POPULATION = "SELECT * FROM XXXXXX WHERE OLD_CYCLE_CODE =  :cycleCode  ";

    @Query(value = FIND_POPULATION, nativeQuery = true)
    @QueryHints(@javax.persistence.QueryHint(name = "org.hibernate.fetchSize", value = "1000"))
    public List<CustomerCycleHistoryData> findPopulation(@Param("cycleCode") short cycleCode);

}

此方法总共返回了100,0000条记录。 我已经使用@QueryHints批量获取每批1000条记录的数据。

  1. 我不知道它是如何创建批次的。
  2. 如果它正在创建具有所提供大小的批处理,那我将如何访问这些批处理,因为最后,它返回的是100,000条记录的列表,而不是一次返回的数据列表。

我想要批量检索数据,因为我将其作为任务分配给线程。我不希望一张表中有100,000条记录。

0 个答案:

没有答案