java for循环批次处理

复制代码
for (int from = 0, to = 0, size = orderList.size(); from < size; from = to) {
    to = Math.min(from + query.getBatchSize(), size);
    List<Order> pageList = orderList.subList(from, to);
    for (Order order : pageList) {
        TradeBillSyncSpec tradeBillSyncSpec = setTradeBillSyncSpec.apply(partnerMap, order);
        tradeBillSyncSpecList.add(tradeBillSyncSpec);
        // 返回操作结果
        DealToMiddleGroundUpgradeOrderVo upgradeDataVO = setDealToMiddleGroundUpgradeOrderVo(order);
        upgradeDataVOList.add(upgradeDataVO);
    }
    try {
        //事务内更新
        transactionTemplate.executeWithoutResult(transactionStatus -> {
            tradeBillBatchSync(pageList, tradeBillSyncSpecList, needUpdate);
        });
    } catch (Exception e) {
        log.error("commonDealToMiddleGround 异常:{}", e);
    }
}
复制代码

 

posted @   八英里  阅读(448)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2021-03-03 【Linux】目录文件权限的查看和修改【转】
2019-03-03 mysql 带条件的sum/count 使用技巧
2019-03-03 github 收藏项目的方法
点击右上角即可分享
微信分享提示