list split批量处理


<dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-collections4</artifactId>
        <version>4.1</version>
      </dependency>
import org.apache.commons.collections4.ListUtils;

 List<List<Integer>> output = ListUtils.partition(largeList, targetSize);

 import org.apache.storm.shade.com.google.common.collect.Lists;

Lists.partition

storm-core-1.1.1.jar

import com.google.common.collect.Lists;
  private static final int BATCH_SIZE = 10_000;

public void addUitids(final String portfolioId, List<String> uitids) { logger.info("Adding {} uitids to portfolio {}", uitids.size(), portfolioId); if (!uitids.isEmpty()) { Lists.partition(uitids, BATCH_SIZE).stream() .map(chunk -> createPortfolioUpdateRequest(false, chunk)) .forEach(i -> notificationService.putNotification(i, portfolioUpdatePath, portfolioId)); } }

<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>26.0-jre</version>
</dependency>

https://www.jianshu.com/p/447a26a6127d

原文地址:https://www.cnblogs.com/tonggc1668/p/8549801.html