是否可以通过JMX / visualvm启动Spring Batch Job?

时间:2017-02-14 13:13:11

标签: spring spring-batch

是否可以通过JMX / visualvm启动Spring Batch Job?

我是否需要依赖:

compile("org.springframework.batch:spring-batch-admin-manager")

文档http://docs.spring.io/spring-batch-admin/reference/jmx.html没有提到开展工作的可能性。仅监控工作统计数据。

1 个答案:

答案 0 :(得分:1)

这是可能的,但我想你也需要使用弹簧集成。 您需要设置集成以侦听JMX,然后将其传输到通道,然后由某个requestTransformer监听:

public class SomethingToJobLaunchRequestTransformer extends AbstractSmthTransformer<JobLaunchRequest> {

  private Job job;

  public void setJob(Job job) {
      this.job = job;
  }

  @Override
  protected final JobLaunchRequest transformSomething(Something smt) {
      JobParametersBuilder jobParametersBuilder = new JobParametersBuilder();
      //put your something into job parameters....
      return new JobLaunchRequest(job, jobParametersBuilder.toJobParameters());
  }

}

最后将其传递给JobLaunchingGateway

有关详细信息,请查看documentation,其中包含很好的示例。