使用经典的java多线程执行,可以轻松证明并行执行(参见:SO: Java Thread Example) 通过调用
this.getId()
导致System.output.println():
[ID 9]
[ID 10]
[ID 8]
如何在Java Spring Batch / Spring Boot中证明并行执行真的发生?
答案 0 :(得分:1)
与documentation描述类似,您可以配置jobs
和steps
。
要查看当前正在运行的作业或步骤,您将同时给出一个名称。
@Configuration
@EnableBatchProcessing
@EnableAutoConfiguration
public class BatchConfiguration {
@Autowired
private JobBuilderFactory jobBuilderFactory;
@Autowired
private StepBuilderFactory stepBuilderFactory;
@Bean
public Step step1() {
return stepBuilderFactory.get("step1")
.tasklet(new Tasklet() {
public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) {
return null;
}
})
.build();
}
@Bean
public Job job(Step step1) throws Exception {
return jobBuilderFactory.get("job1")
.incrementer(new RunIdIncrementer())
.start(step1)
.build();
}
}
JobExecution有很多关于你工作的信息。
这里有一些有用的文档:
答案 1 :(得分:0)
一种非常通用的方式是:
Thread thread = Thread.currentThread();
System.out.println(thread);