Tôi đang cố gắng chạy lệnh batch của mình từ bộ điều khiển. Nó sẽ được kích hoạt bởi công việc cron hoặc bằng cách truy cập một liên kết cụ thể. Tôi đang sử dụng Khởi động mùa xuân, không có chú thích chỉ XML. Trong bối cảnh hiện tại của tôi, tôi có một dịch vụ có chứa đậu sau:chạy công việc hàng loạt mùa xuân từ bộ điều khiển
@EnableBatchProcessing
@PersistenceContext
public class batchService{
@Bean
public ItemReader<Somemodel> reader() {
...
}
@Bean
public ItemProcessor<Somemodel, Somemodel> processor() {
return new SomemodelProcessor();
}
@Bean
public ItemWriter writer() {
CustomItemWriter writer = new CustomItemWriter();
return writer;
}
@Bean
public Job importUserJob(JobBuilderFactory jobs, Step s1) {
return jobs.get("importUserJob")
.incrementer(new RunIdIncrementer())
.flow(s1)
.end()
.build();
}
@Bean
public Step step1(StepBuilderFactory stepBuilderFactory,
ItemReader<somemodel> reader,
ItemWriter<somemodel> writer, ItemProcessor<somemodel,
somemodel> processor) {
return stepBuilderFactory.get("step1")
.<somemodel, somemodel> chunk(100)
.reader(reader)
.processor(processor)
.writer(writer)
.build();
}
}
Ngay sau khi tôi đưa @Configuration chú thích trên đầu trang của lớp batchService của tôi, công việc sẽ bắt đầu ngay sau khi tôi chạy ứng dụng. Nó thành công, mọi thứ đều ổn. Bây giờ tôi đang cố gắng loại bỏ chú thích @Configuration và chạy nó bất cứ khi nào tôi muốn. Có cách nào để bắn nó từ bộ điều khiển không?
Cảm ơn!
Ive nhìn thấy JobLauncher trước đây, nhưng tôi không biết làm thế nào để thiết lập nó để nó biết whitch công việc để chạy (importUserJob trong trường hợp của tôi mà mất 2 thông số). Tôi có phải tạo Bean CustomJobLauncher, đặt nó ở đó và sau đó tiêm CustomJobLauncher của tôi không? Hiện tại chỉ sau khi tiêm JobLauncher theo lời khuyên của bạn, tôi nhận được Không có loại đậu đủ điều kiện nào loại [org.springframework.batch.core.launch.JobLauncher] được tìm thấy cho sự phụ thuộc – Damian
Miễn là bạn có một lớp '@ Configuration' được chú thích bằng' @EnableBatchProcessing 'một' JobLauncher' đậu nên được tạo tự động –
tuyệt vời, cảm ơn bạn! – Damian