2017-03-09 65 views

回答

0

使用JobOperator可以輕鬆完成Spring批處理的所有調用。其實spring batch documentation有很多信息。

private JobOperator jobOperator; 

@RequestMapping(value = "/", method = RequestMethod.GET) 
@ResponseStatus(HttpStatus.ACCEPTED) 
public String launch() { 
    List<JobInstance> jobInstances = jobExplorer.getJobInstances("myJob", 0, 10); 

    List<String> all = jobInstances.stream() 
      .map(jobExplorer::getJobExecutions) 
      .flatMap(Collection::stream) 
      .map(JobExecution::toString) 
      .collect(Collectors.toList()); 

    return all; 
} 


@RequestMapping(value = "/", method = RequestMethod.POST) 
@ResponseStatus(HttpStatus.ACCEPTED) 
public Long restartJob(@RequestParam("execId") Long executionId) { 
    return jobOperator.restart(executionId); 
} 

@RequestMapping(value = "/", method = RequestMethod.PUT) 
@ResponseStatus(HttpStatus.ACCEPTED) 
public Long startJob() { 
    return jobOperator.start("jobName", "parameters..."); 
} 
相關問題