是否可以选择自动运行Spring Batch作业,而无需计划或从其他来源触发它?
我们可以通过调度表达式或通过main方法(如下所述)来运行spring批处理作业。
public static void runBatch() {
JobLauncher jobLauncher = (JobLauncher) getApplicationContext().getBean("jobLauncher");
Job job = get Job details here;
JobParametersBuilder jobParameters = new JobParametersBuilder();
// Setting Job Parameter and run job using below
JobExecution jobExecution = jobLauncher.run(job, jobParameters.toJobParameters());
}
public static void main(String[] args) {
runBatch();
}
意味着我们需要手动或通过其他一些调度程序调用main方法,以便它触发。没有此主要方法或调度程序,我们可以自动调用此批处理吗?还是有更好的选择?
- Spring批处理应自动触发,而无需从任何入口点触发,就像它的守护进程线程一样。
- 假设一次批次正在使用spring批次处理数据。运行完成后如何自动触发Spring Batch作业 工作?
答案 0 :(得分:0)
存在许多触发批处理的选项:
fixedDelay
调度runBatch
。