首页 > 解决方案 > 暂停和恢复作业执行 Spring Batch

问题描述

有同样的问题在这里问 -

Spring批处理暂停/恢复与停止/重启

我在春天检查了 BatchStatus 枚举,没有可用的状态 PAUSED,它仅作为用例提供,此处没有详细信息 -

https://docs.spring.io/spring-batch/2.1.x/cases/pause.html

标签: spring-batch

解决方案


为此使用作业运算符,它是提供停止、重新启动、getStatus 等功能的基本接口

public interface JobOperator {

List<Long> getExecutions(long instanceId) throws NoSuchJobInstanceException;

List<Long> getJobInstances(String jobName, int start, int count)
      throws NoSuchJobException;

Set<Long> getRunningExecutions(String jobName) throws NoSuchJobException;

String getParameters(long executionId) throws NoSuchJobExecutionException;

Long start(String jobName, String parameters)
      throws NoSuchJobException, JobInstanceAlreadyExistsException;

Long restart(long executionId)
      throws JobInstanceAlreadyCompleteException, NoSuchJobExecutionException,
              NoSuchJobException, JobRestartException;

Long startNextInstance(String jobName)
      throws NoSuchJobException, JobParametersNotFoundException, JobRestartException,
             JobExecutionAlreadyRunningException, JobInstanceAlreadyCompleteException;

boolean stop(long executionId)
      throws NoSuchJobExecutionException, JobExecutionNotRunningException;

String getSummary(long executionId) throws NoSuchJobExecutionException;

Map<Long, String> getStepExecutionSummaries(long executionId)
      throws NoSuchJobExecutionException;

Set<String> getJobNames();

}

这是一个例子

JOB_OPERATOR 示例


推荐阅读