Java Batch的设计使您在重新启动作业实例时可以从上次中断的地方继续执行(在上一个失败或停止的执行中)。
因此,通常这意味着两件事:
- 在作业内,您从先前失败的步骤(或作业停止的步骤)开始。
- 在该步骤中,首先使用批处理容器保留的检查点值定位输入光标。
因此,如果在初始执行时您完成了 步骤1, 然后在 步骤2 在记录#4123处失败,并且每100条记录都设置检查点,那么通常在重新启动时,您将在
步骤2 在记录#4100处开始执行。
在某些情况下,有必要执行 第一步 就重启以及,在执行前 第二步: 在工作以前失败,有一个选项来获得这种行为也是如此。
通常,经常按计划重复提交/开始工作。
根据批处理规范,每次启动作业时都会创建一个新的 JobInstance 。这时初始 JobExecution 此
JobInstance 创建。如果执行不运行到完成,实例可以重新开始,此时第二 JobExecution 为这个创建
JobInstance 。
因此,重新启动会使用前一个 JobExecution 的检查点和执行历史记录,而启动将从干净的开始开始。



