使用forkjoin和Guaua的集合類
final int para_num = (int) (Runtime.getRuntime().availableProcessors() / 0.8);
logger.info("併發度:" + para_num);
List<List<Object[]>> partitions = Lists.partition(args, args.size() / para_num);
ForkJoinPool forkJoinPool = new ForkJoinPool(para_num);
forkJoinPool.submit(() -> {
partitions.parallelStream().forEach(item -> {
logger.info(Thread.currentThread().getName());
jdbcTemplate.batchUpdate(sql, item);
logger.info("已導入數據【" + item.size() + "】條");
});
}).get();