在具有不同参数的每个线程中运行相同 spring 批作业的多个实例

使用 spring 批处理/ spring 启动,是否可以进行 spring 批处理作业,每个线程使用不同的 jobparameters 作为作业多次启动读取器,处理器和写入器?

我的用例:

我有许多需要观看的文件夹 . 如果新文件进入文件夹,我需要调用作业并在处理作业时锁定文件夹 .

所以这可能发生在不同数量的文件夹中,这就是为什么我需要弹出批处理作业的多个实例,但每次都有不同的 jobparameters .

每个文件夹一个作业实例和文件夹数量可能会有所不同 . 任何人都知道它是否可能与 Spring 季批次,或应该自己发明?我试过 Spring 季批量工作,但总是说:

此作业的作业执行已在运行:JobInstance:id = 1,version = 0,Job = [feedfiletransformer-delegate-job]

回答(1)

2 years ago

通过阅读这篇文章解决mkyoung

JobParameters jobParameters = 
          new JobParametersBuilder()
          .addLong("time",System.currentTimeMillis()).toJobParameters();