Kuarsa + Batch Pegas di boot Musim Semi

Saya mencoba mengembangkan aplikasi pegas yang memiliki integrasi Quartz dan Spring Batch. Karena beberapa alasan, saya tidak dapat menjalankannya dengan benar dan mendapatkan beberapa kesalahan kompilasi.

Kode:

QuartzConfiguration

@Configuration 
@ComponentScan("com.concretepage") 
public class QuartzConfiguration {

    @Bean
    public MethodInvokingJobDetailFactoryBean methodInvokingJobDetailFactoryBean() {
        MethodInvokingJobDetailFactoryBean obj = new MethodInvokingJobDetailFactoryBean();
        obj.setTargetBeanName("jobone");
        obj.setTargetMethod("myTask");
        return obj;
    }

    @Bean
    public CronTriggerFactoryBean cronTriggerFactoryBean(){
        CronTriggerFactoryBean stFactory = new CronTriggerFactoryBean();
        SpringBatchJobs batch = new SpringBatchJobs();
        stFactory.setJobDetail(batch.job()); // here i'm getting some compilcation error like "The method job() from the type SpringBatchJobs refers to the missing type Job"
        stFactory.setStartDelay(3000);
        stFactory.setName("mytrigger");
        stFactory.setGroup("mygroup");
        stFactory.setCronExpression("0/1 * * * * ?");
        return stFactory;
    }

    @Bean
    public SchedulerFactoryBean schedulerFactoryBean() {
        SchedulerFactoryBean scheduler = new SchedulerFactoryBean();
        scheduler.setTriggers(cronTriggerFactoryBean().getObject());
        return scheduler;
    }
}  

Gelombang Musim Semi:

@EnableBatchProcessing
public class SpringBatchJobs {

    @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();
    }

}

Masalahnya muncul pada baris berikut

stFactory.setJobDetail(batch.job()); // here i'm getting some compilcation error like "The method job() from the type SpringBatchJobs refers to the missing type Job"

Bagaimana saya bisa menjalankan pekerjaan Spring Batch menggunakan Quartz2 di boot musim semi? Ada ide


person user1030128    schedule 09.06.2016    source sumber


Jawaban (1)


Pekerjaan batch musim semi perlu diluncurkan dengan menggunakan peluncur pekerjaan batch musim semi.

Silakan lihat tautan di bawah untuk detail pasti tentang cara melakukannya.

https://examples.javacodegeeks.com/enterprise-java/spring/batch/quartz-spring-batch-example/

person Sushil Behera    schedule 16.12.2017