SpringBatch 批量执行状态保存在哪里?
Where does Spring Batch saves the batch execution state?
我有一个 spring 批处理作业需要很长时间才能执行。执行了一段时间后,我决定停止它,但每当我重新启动服务器时,作业在服务器恢复后仍继续执行。
我想知道 spring 批处理保存状态的位置,以便我可以删除它并阻止它发生。
我发现有一些属性可以配置为无法重新启动作业,我将继续使用它,但现在我只需要确保作业可以永久停止。
您可以查看文档 here,其中显示和描述了 spring 批处理元数据表。
如果你只是想防止重新启动作业,下面的配置应该对你有帮助。
preventRestart()
有助于避免重新启动作业
@Bean
public Job myJob(JobBuilderFactory jobs) throws Exception {
return jobs.get("myJob")
.flow(step1())
.build()
.preventRestart()
.build();
}
我有一个 spring 批处理作业需要很长时间才能执行。执行了一段时间后,我决定停止它,但每当我重新启动服务器时,作业在服务器恢复后仍继续执行。
我想知道 spring 批处理保存状态的位置,以便我可以删除它并阻止它发生。
我发现有一些属性可以配置为无法重新启动作业,我将继续使用它,但现在我只需要确保作业可以永久停止。
您可以查看文档 here,其中显示和描述了 spring 批处理元数据表。
如果你只是想防止重新启动作业,下面的配置应该对你有帮助。
preventRestart()
有助于避免重新启动作业
@Bean
public Job myJob(JobBuilderFactory jobs) throws Exception {
return jobs.get("myJob")
.flow(step1())
.build()
.preventRestart()
.build();
}