首页 > 其他分享 >分批次执行业务

分批次执行业务

时间:2023-05-11 14:12:38浏览次数:32  
标签:tmp run 批次 List list 业务 param Paging 执行

对于代码中常有每一千条数据插入数据库或者每一千条数据调用数据查询、业务逻辑处理或者调用其他服务等等操作,提供一接口 以供抽取 固定大小的List对象遍历代码的方法

package com.test.common.utils;

import java.util.ArrayList;
import java.util.List;

/**
 * @ClassName Paging
 * @Description Paging
 * @Author zhaozhang
 * @Date 2023/5/8 15:13
 * @param <T> 泛型
 * @Version 1.0
 */
public interface Paging<T> {
    int NUM = 1000;

    /**
     * 业务代码
     * @param list
     */
    void run(List<T> list);

    /**
     * 分页执行业务
     * @param list 参数
     */
    default void  doing(List<T> list) {
        List<T> tmp = new ArrayList<>();
        for (T t : list) {
            tmp.add(t);
            if (tmp.size() == NUM) {
                run(tmp);
                tmp.clear();
            }
        }
        if (tmp.size() > 0) {
            run(tmp);
        }
    }
}

调用该接口使用方法示例

List<String> idList = new ArrayList<>();
idList.add("https://www.cnblogs.com/zzgeren/p/17390857.html");
((Paging<String>) list -> System.out.println(list) ).doing(idList );

 

标签:tmp,run,批次,List,list,业务,param,Paging,执行
From: https://www.cnblogs.com/zzgeren/p/17390857.html

相关文章

  • 详解一条SQL语句在MySQL架构中的执行过程
    详解一条SQL语句在MySQL架构中的执行过程时代Java 2023-05-0907:40 发表于北京↑ 点击上面 “时代Java”关注我们,关注新技术,学习新知识! 1.单表查询SQL在MySQL架构中的各个组件的执行过程先简单用一张图说明下,MySQL架构有哪些组件,接下来给大家用SQL语句分析假......
  • Python打包exe,执行报player组件缺失“File "plyer\facades\notification.py", line
    之前的打包方式:pyinstaller--onefile--windowedpythonfilename.py执行exe报错:修改打包命令:pyinstaller--onefile--windowed--hidden-importplyer.platforms.win.notificationpythonfilename.py执行新的exe,正常弹窗,错误消失,win10toast组件实现类似功能,打包也......
  • 评价数据质量测试的业务价值
    评价数据质量测试的业务价值,需要从以下几个方面考虑:数据质量的重要性:数据作为企业最重要的资产之一,对企业的业务决策、客户体验、营销效果等方面都有着深远的影响。因此,数据质量的问题可能导致企业业务的停滞甚至失败,从而造成重大的经济损失。通过数据质量测试可以发现数据的问......
  • Vue项目中created生命周期重复执行
    路由切换跳转时,发现一个页面的接口和页面展示每次进入都重新请求以及渲染,没有缓存下来,对比了一下的其它页面,并没有这个问题,所以说这个页面是特例,那么就说明这个页面的展示形式上有问题,一开始以为全局组件中用了keep-alive对页面做了缓存以及不缓存的处理,后来发现根本没有。......
  • 数据治理是一个部门的工作还是全业务体系的工作?_光点科技
    随着互联网时代的到来,数据已成为企业生产和经营的重要资源。但是,随着数据量的不断增加和数据形态的多样化,如何管理和利用数据也成为了企业面临的一个重要问题。在这个过程中,数据治理成为了一个备受关注的话题。那么,数据治理到底是一个部门的工作还是全业务体系的工作呢?首先,我们需要......
  • delphi执行外部程序并等待结束返回响应
    //写成函数需要引用ShellAPI单元;functionExecuteFileWait(ExecuteFile:string):Integer;//实现执行外部程序,并等待程序结束的函数,返回值为1varSEInfo:TShellExecuteInfo;ExitCode:DWORD;ParamString,StartInString:string;beginFillChar(SEInfo,S......
  • Python程序执行的流程控制(选择和循环)
    选择结构单分支if条件:语句块(注意要打冒号冒号冒号,用缩进代替大括号的功能)双分支if条件:语句块1else:语句块2多分支if条件1:语句块1elif条件2:语句块2……else:语句块n若有多个条件都满足,只执行第一个被满足条件......
  • Windows 任务计划程序 执行php
    1.作用类似于闹钟,在什么时间做什么事情概念:周期性的让系统完成相应的操作任务作用说明:1>定期进行数据备份2>周期性的重启服务程序--耗费内存3>周期性,切割日志信息4>周期性,执行脚本文件 2.操作步骤2.1创建任务 2.2.常规设置 2.3触发器设置(设置想要触发执行的时......
  • (转)OLAP 任务的并发执行与调度
     本文以SQL查询为基础,在关系模型的执行方案下讨论了分布式/并行OLAP任务执行的基本模型和经典方案,并且涵盖了一些最新研究(如动态调整技术)的介绍。主要策略:DataLocality、WorkingStealing、DelayStealing、慢任务异地重试等。 万变不离其宗,这些策略与分布式系统中的任务......
  • 为什么领英职场停止服务并宣布调整中国业务战略?
    5月9日,领英在双微发布“致领英职场会员的一封信”和“领英在华相关服务调整及策略更新”,宣布在慎重考量后决定调整中国业务战略,在中国的本土化求职平台——“领英职场”将于2023年8月9日起正式停止服务,中国团队的规模也将有所缩减。 领英表示,“领英职场”始终面临着日趋激烈的......