You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
2.3 KiB
73 lines
2.3 KiB
/* |
|
* Copyright 2012-2018 the original author or authors. |
|
* |
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
* you may not use this file except in compliance with the License. |
|
* You may obtain a copy of the License at |
|
* |
|
* http://www.apache.org/licenses/LICENSE-2.0 |
|
* |
|
* Unless required by applicable law or agreed to in writing, software |
|
* distributed under the License is distributed on an "AS IS" BASIS, |
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
* See the License for the specific language governing permissions and |
|
* limitations under the License. |
|
*/ |
|
|
|
package sample.batch; |
|
|
|
import org.springframework.batch.core.Job; |
|
import org.springframework.batch.core.Step; |
|
import org.springframework.batch.core.StepContribution; |
|
import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; |
|
import org.springframework.batch.core.configuration.annotation.JobBuilderFactory; |
|
import org.springframework.batch.core.configuration.annotation.StepBuilderFactory; |
|
import org.springframework.batch.core.scope.context.ChunkContext; |
|
import org.springframework.batch.core.step.tasklet.Tasklet; |
|
import org.springframework.batch.repeat.RepeatStatus; |
|
import org.springframework.beans.factory.annotation.Autowired; |
|
import org.springframework.boot.SpringApplication; |
|
import org.springframework.boot.autoconfigure.SpringBootApplication; |
|
import org.springframework.context.annotation.Bean; |
|
|
|
@SpringBootApplication |
|
@EnableBatchProcessing |
|
public class SampleBatchApplication { |
|
|
|
@Autowired |
|
private JobBuilderFactory jobs; |
|
|
|
@Autowired |
|
private StepBuilderFactory steps; |
|
|
|
@Bean |
|
protected Tasklet tasklet() { |
|
|
|
return new Tasklet() { |
|
@Override |
|
public RepeatStatus execute(StepContribution contribution, |
|
ChunkContext context) { |
|
return RepeatStatus.FINISHED; |
|
} |
|
}; |
|
|
|
} |
|
|
|
@Bean |
|
public Job job() throws Exception { |
|
return this.jobs.get("job").start(step1()).build(); |
|
} |
|
|
|
@Bean |
|
protected Step step1() throws Exception { |
|
return this.steps.get("step1").tasklet(tasklet()).build(); |
|
} |
|
|
|
public static void main(String[] args) { |
|
// System.exit is common for Batch applications since the exit code can be used to |
|
// drive a workflow |
|
System.exit(SpringApplication |
|
.exit(SpringApplication.run(SampleBatchApplication.class, args))); |
|
} |
|
|
|
}
|
|
|