Java 类org.springframework.batch.core.step.tasklet.Tasklet 实例源码

项目:XML-JSON-MongoDB-Spring-Batch-Example    文件:JobConfiguration.java   
@Bean
public Step step1() {
    return stepBuilderFactory.get("step1")
            .tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution stepContribution, ChunkContext chunkContext) throws Exception {

                    // get path of file in src/main/resources
                    Path xmlDocPath =  Paths.get(getFilePath());

                    // process the file to json
                     String json = processXML2JSON(xmlDocPath);

                     // insert json into mongodb
                     insertToMongo(json);
                    return RepeatStatus.FINISHED;
                }
            }).build();
}
项目:batch-scheduler    文件:TaskletFactory.java   
public Tasklet getTasklet(BatchRunConfDto conf, String typeId, String scritpFile) {
    String cmd = Paths.get(conf.getBasePath(), scritpFile).toString();
    switch (typeId) {
        case CMD_TYPE:
            cmd = "cmd /c " + cmd;
            return new ExecTasklet(cmd, execService, conf);
        case SHELL_TYPE:
            cmd = "sh -x " + cmd;
            return new ExecTasklet(cmd, execService, conf);
        case JAR_TYPE:
            cmd = "java -jar " + cmd;
            return new ExecTasklet(cmd, execService, conf);
        case BINARY_TYPE:
            return new ExecTasklet(cmd, execService, conf);
        case PROC_TYPE:
            return new ProcTasklet(scritpFile, jdbcTemplate);
    }
    return null;
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JobLauncherCommandLineRunnerTests.java   
@Before
public void init() throws Exception {
    this.context.register(BatchConfiguration.class);
    this.context.refresh();
    JobRepository jobRepository = this.context.getBean(JobRepository.class);
    this.jobLauncher = this.context.getBean(JobLauncher.class);
    this.jobs = new JobBuilderFactory(jobRepository);
    PlatformTransactionManager transactionManager = this.context
            .getBean(PlatformTransactionManager.class);
    this.steps = new StepBuilderFactory(jobRepository, transactionManager);
    this.step = this.steps.get("step").tasklet(new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution,
                ChunkContext chunkContext) throws Exception {
            return null;
        }
    }).build();
    this.job = this.jobs.get("job").start(this.step).build();
    this.jobExplorer = this.context.getBean(JobExplorer.class);
    this.runner = new JobLauncherCommandLineRunner(this.jobLauncher,
            this.jobExplorer);
    this.context.getBean(BatchConfiguration.class).clear();
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecutionOnNonRestartableJob() throws Exception {
    this.job = this.jobs.get("job").preventRestart()
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    this.runner.execute(this.job, new JobParameters());
    this.runner.execute(this.job, new JobParameters());
    // A failed job that is not restartable does not re-use the job params of
    // the last execution, but creates a new job instance when running it again.
    assertThat(this.jobExplorer.getJobInstances("job", 0, 100)).hasSize(2);
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecutionWithNonIdentifyingParameters() throws Exception {
    this.job = this.jobs.get("job")
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    JobParameters jobParameters = new JobParametersBuilder().addLong("id", 1L, false)
            .addLong("foo", 2L, false).toJobParameters();
    this.runner.execute(this.job, jobParameters);
    this.runner.execute(this.job, jobParameters);
    assertThat(this.jobExplorer.getJobInstances("job", 0, 100)).hasSize(1);
}
项目:spring-boot-concourse    文件:JobLauncherCommandLineRunnerTests.java   
@Before
public void init() throws Exception {
    this.context.register(BatchConfiguration.class);
    this.context.refresh();
    JobRepository jobRepository = this.context.getBean(JobRepository.class);
    this.jobLauncher = this.context.getBean(JobLauncher.class);
    this.jobs = new JobBuilderFactory(jobRepository);
    PlatformTransactionManager transactionManager = this.context
            .getBean(PlatformTransactionManager.class);
    this.steps = new StepBuilderFactory(jobRepository, transactionManager);
    this.step = this.steps.get("step").tasklet(new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution,
                ChunkContext chunkContext) throws Exception {
            return null;
        }
    }).build();
    this.job = this.jobs.get("job").start(this.step).build();
    this.jobExplorer = this.context.getBean(JobExplorer.class);
    this.runner = new JobLauncherCommandLineRunner(this.jobLauncher,
            this.jobExplorer);
    this.context.getBean(BatchConfiguration.class).clear();
}
项目:spring-boot-concourse    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecutionOnNonRestartableJob() throws Exception {
    this.job = this.jobs.get("job").preventRestart()
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    this.runner.execute(this.job, new JobParameters());
    this.runner.execute(this.job, new JobParameters());
    // A failed job that is not restartable does not re-use the job params of
    // the last execution, but creates a new job instance when running it again.
    assertThat(this.jobExplorer.getJobInstances("job", 0, 100)).hasSize(2);
}
项目:spring-boot-concourse    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecutionWithNonIdentifyingParameters() throws Exception {
    this.job = this.jobs.get("job")
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    JobParameters jobParameters = new JobParametersBuilder().addLong("id", 1L, false)
            .addLong("foo", 2L, false).toJobParameters();
    this.runner.execute(this.job, jobParameters);
    this.runner.execute(this.job, jobParameters);
    assertThat(this.jobExplorer.getJobInstances("job", 0, 100)).hasSize(1);
}
项目:contestparser    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecutionOnNonRestartableJob() throws Exception {
    this.job = this.jobs.get("job").preventRestart()
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    this.runner.execute(this.job, new JobParameters());
    this.runner.execute(this.job, new JobParameters());
    // A failed job that is not restartable does not re-use the job params of
    // the last execution, but creates a new job instance when running it again.
    assertEquals(2, this.jobExplorer.getJobInstances("job", 0, 100).size());
}
项目:contestparser    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecutionWithNonIdentifyingParameters() throws Exception {
    this.job = this.jobs.get("job")
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    JobParameters jobParameters = new JobParametersBuilder().addLong("id", 1L, false)
            .addLong("foo", 2L, false).toJobParameters();
    this.runner.execute(this.job, jobParameters);
    this.runner.execute(this.job, jobParameters);
    assertEquals(1, this.jobExplorer.getJobInstances("job", 0, 100).size());
}
项目:spring-batch-experiments    文件:ImportProductJobConfiguration.java   
@Bean
public Job importProductsJob(Tasklet decompressTasklet, ItemReader<Product> reader) {

    Step decompress = stepBuilders.get("decompress")
                                  .tasklet(decompressTasklet)
                                  .repository(jobRepository)
                                  .transactionManager(transactionManager)
                                  .build();

    Step readWriteProducts = stepBuilders.get("readWriteProducts")
                                         .<Product, Product>chunk(3)
                                         .reader(reader)
                                         .writer(writer())
                                         .faultTolerant()
                                         .skipLimit(5)
                                         .skip(FlatFileParseException.class)
                                         .build();

    return jobBuilders.get("importProductsJob")
                      .repository(jobRepository)
                      .listener(loggerListener)
                      .start(decompress)
                      .next(readWriteProducts)
                      .build();
}
项目:composed-task-runner    文件:ComposedRunnerVisitorConfiguration.java   
private Step createTaskletStepWithListener(final String taskName,
        StepExecutionListener stepExecutionListener) {
    return this.steps.get(taskName)
            .tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                    return RepeatStatus.FINISHED;
                }
            })
            .transactionAttribute(getTransactionAttribute())
            .listener(stepExecutionListener)
            .build();
}
项目:composed-task-runner    文件:ComposedRunnerVisitorConfiguration.java   
private Step createTaskletStep(final String taskName) {
    return this.steps.get(taskName)
            .tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                    return RepeatStatus.FINISHED;
                }
            })
            .transactionAttribute(getTransactionAttribute())
            .build();
}
项目:XML-JSON-MongoDB-Spring-Batch-Example    文件:JobConfiguration.java   
public Step step2(){
    return stepBuilderFactory.get("step2")
        .tasklet(new Tasklet(){
        @Override
        public RepeatStatus execute(StepContribution stepContribution, ChunkContext chunkContext) throws Exception{

            // checks if our collection exists
            Boolean doesexist = mongoTemplate.collectionExists("foo");
            System.out.println("Status of collection returns :::::::::::::::::::::" + doesexist);

            // show all DBObjects in foo collection
            DBCursor alldocs = mongoTemplate.getCollection("foo").find();
            List<DBObject> dbarray = alldocs.toArray();
            System.out.println("list of db objects returns:::::::::::::::::::::" + dbarray);

            // execute the three methods we defined for querying the foo collection
            String result = doCollect();
            String resultTwo = doCollectTwo();
            String resultThree = doCollectThree();

            System.out.println(" RESULT:::::::::::::::::::::" + result);

            System.out.println(" RESULT:::::::::::::::::::::" + resultTwo);

            System.out.println(" RESULT:::::::::::::::::::::" + resultThree);



            return RepeatStatus.FINISHED;
        }
    }).build();
}
项目:nixmash-blog    文件:DemoJobConfiguration.java   
@Bean
public Step optionalStep() {
    return stepBuilderFactory.get("optionalStep")
            .tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                                            ChunkContext chunkContext) throws Exception {
                    logger.info("IN OPTIONAL STEP ------------------------ */");
                    return RepeatStatus.FINISHED;
                }
            })
            .build();
}
项目:nixmash-blog    文件:GithubJobConfiguration.java   
@Bean
    public Step githubStep1() throws Exception {
        return stepBuilderFactory.get("githubStep1")
                .tasklet(new Tasklet() {
                    public RepeatStatus execute(StepContribution contribution,
                                                ChunkContext chunkContext) {

//                        GitHubDTO gitHubDTO = githubJobUI.getDummyStats();

                        GitHubDTO gitHubDTO = githubJobUI.getGitHubStats();
                        long currentStatId = githubJobUI.getCurrentGithubId();
                        gitHubDTO.setStatId(currentStatId);
                        gitHubDTO.setStatDate(new Date());

                        githubJobUI.saveGithubStats(gitHubDTO);

                        chunkContext
                                .getStepContext()
                                .getStepExecution()
                                .getJobExecution()
                                .getExecutionContext()
                                .put("statId", currentStatId);

                        logger.info("Working with GitHubDTO: " + gitHubDTO.toString());
                        return RepeatStatus.FINISHED;
                    }
                })
                .listener(githubPromotionListener())
                .build();
    }
项目:spring-batch-article    文件:CustomerReportJobConfig.java   
@Bean
public Tasklet tasklet() {
    return (contribution, chunkContext) -> {
        log.info("Executing tasklet step");
        return RepeatStatus.FINISHED;
    };
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecution() throws Exception {
    this.job = this.jobs.get("job")
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    this.runner.execute(this.job, new JobParameters());
    this.runner.execute(this.job, new JobParameters());
    assertThat(this.jobExplorer.getJobInstances("job", 0, 100)).hasSize(1);
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:SampleBatchApplication.java   
@Bean
protected Tasklet tasklet() {

    return new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution,
                ChunkContext context) {
            return RepeatStatus.FINISHED;
        }
    };

}
项目:spring-boot-concourse    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecution() throws Exception {
    this.job = this.jobs.get("job")
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    this.runner.execute(this.job, new JobParameters());
    this.runner.execute(this.job, new JobParameters());
    assertThat(this.jobExplorer.getJobInstances("job", 0, 100)).hasSize(1);
}
项目:spring-boot-concourse    文件:SampleBatchApplication.java   
@Bean
protected Tasklet tasklet() {

    return new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution,
                ChunkContext context) {
            return RepeatStatus.FINISHED;
        }
    };

}
项目:spring-boot-sandbox    文件:TwoDatasourceBatchSampleApplication.java   
@Bean
Tasklet tasklet() {
    return (a, b) -> {
        System.out.println("Hello, Spring Batch!!!");
        return RepeatStatus.FINISHED;
    };
}
项目:spring-boot-sandbox    文件:SimpleBatch.java   
@Bean
public Job job() throws Exception {

    Tasklet tasklet = (contribution, chunkContext) -> {
        Logger logger = LoggerFactory.getLogger(SimpleBatch.class);
        logger.info("Hello, Spring Batch!!");
        return RepeatStatus.FINISHED;
    };

    Step step = steps.get("step").tasklet(tasklet).build();

    return jobs.get("job").start(step).build();
}
项目:contestparser    文件:JobLauncherCommandLineRunnerTests.java   
@Before
public void init() throws Exception {
    this.context.register(BatchConfiguration.class);
    this.context.refresh();
    JobRepository jobRepository = this.context.getBean(JobRepository.class);
    this.jobLauncher = this.context.getBean(JobLauncher.class);
    this.jobs = new JobBuilderFactory(jobRepository);
    PlatformTransactionManager transactionManager = this.context
            .getBean(PlatformTransactionManager.class);
    this.steps = new StepBuilderFactory(jobRepository, transactionManager);
    this.step = this.steps.get("step").tasklet(new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution,
                ChunkContext chunkContext) throws Exception {
            return null;
        }
    }).build();
    this.job = this.jobs.get("job").start(this.step).build();
    this.jobExplorer = this.context.getBean(JobExplorer.class);
    this.runner = new JobLauncherCommandLineRunner(this.jobLauncher,
            this.jobExplorer);
    this.context.getBean(BatchConfiguration.class).clear();
}
项目:contestparser    文件:JobLauncherCommandLineRunnerTests.java   
@Test
public void retryFailedExecution() throws Exception {
    this.job = this.jobs.get("job")
            .start(this.steps.get("step").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution,
                        ChunkContext chunkContext) throws Exception {
                    throw new RuntimeException("Planned");
                }
            }).build()).incrementer(new RunIdIncrementer()).build();
    this.runner.execute(this.job, new JobParameters());
    this.runner.execute(this.job, new JobParameters());
    assertEquals(1, this.jobExplorer.getJobInstances("job", 0, 100).size());
}
项目:contestparser    文件:SampleBatchApplication.java   
@Bean
protected Tasklet tasklet() {
    return new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution,
                ChunkContext context) {
            return RepeatStatus.FINISHED;
        }
    };
}
项目:springone-2015    文件:BatchHive2Configuration.java   
@Bean
Tasklet hiveInfluencersTasklet(HiveClientFactory hiveClientFactory) throws Exception {
    HiveTasklet hiveTasklet = new HiveTasklet();
    hiveTasklet.setHiveClientFactory(hiveClientFactory);
    hiveTasklet.setScripts(hiveScripts());
    return hiveTasklet;
}
项目:springone-2015    文件:BatchHive2Configuration.java   
@Bean
Tasklet resultsTasklet(@Qualifier("exportDataSource") final DataSource exportDataSource) {
    return new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
            JdbcTemplate jdbcTemplate = new JdbcTemplate(exportDataSource);
            System.out.println("Results:");
            List<Map<String, Object>> results = jdbcTemplate.queryForList("select * from twitter_influencers");
            for (Map<String, Object> r : results) {
                System.out.println(" " + r);
            }
            return RepeatStatus.FINISHED;
        }
    };
}
项目:pinenut    文件:BatchConfiguration.java   
@Bean
public Step step1() {
  return stepBuilderFactory.get("step1")
      .tasklet(new Tasklet() {
        public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) {
          return null;
        }
      })
      .build();
}
项目:spring-cloud-task    文件:BatchEventsApplication.java   
@Bean
public Step step1() {
    return this.stepBuilderFactory.get("step1")
            .tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                    System.out.println("Tasklet has run");
                    return RepeatStatus.FINISHED;
                }
            }).build();
}
项目:spring-cloud-task    文件:JobConfiguration.java   
@Bean
@StepScope
public Tasklet workerTasklet(
        final @Value("#{stepExecutionContext['partitionNumber']}")Integer partitionNumber) {

    return new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
            System.out.println("This tasklet ran partition: " + partitionNumber);

            return RepeatStatus.FINISHED;
        }
    };
}
项目:spring-cloud-task    文件:JobConfiguration.java   
@Bean
public Job job1() {
    return jobBuilderFactory.get("job1")
            .start(stepBuilderFactory.get("job1step1")
                .tasklet(new Tasklet() {
                    @Override
                    public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                        logger.info("Job1 was run");
                        return RepeatStatus.FINISHED;
                    }
                })
                .build())
            .build();
}
项目:spring-cloud-task    文件:JobConfiguration.java   
@Bean
public Job job2() {
    return jobBuilderFactory.get("job2")
            .start(stepBuilderFactory.get("job2step1")
                .tasklet(new Tasklet() {
                    @Override
                    public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                        logger.info("Job2 was run");
                        return RepeatStatus.FINISHED;
                    }
                })
                .build())
            .build();
}
项目:spring-cloud-task    文件:TaskBatchEventListenerBeanPostProcessor.java   
@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {

    registerJobExecutionEventListener(bean);

    if (bean instanceof AbstractStep) {
        registerStepExecutionEventListener(bean);
        if (bean instanceof TaskletStep) {
            TaskletStep taskletStep = (TaskletStep) bean;
            Tasklet tasklet = taskletStep.getTasklet();
            registerChunkEventsListener(bean);

            if (tasklet instanceof ChunkOrientedTasklet) {
                Field chunkProviderField = ReflectionUtils.findField(ChunkOrientedTasklet.class, "chunkProvider");
                ReflectionUtils.makeAccessible(chunkProviderField);
                SimpleChunkProvider chunkProvider = (SimpleChunkProvider) ReflectionUtils.getField(chunkProviderField, tasklet);
                Field chunkProcessorField = ReflectionUtils.findField(ChunkOrientedTasklet.class, "chunkProcessor");
                ReflectionUtils.makeAccessible(chunkProcessorField);
                SimpleChunkProcessor chunkProcessor = (SimpleChunkProcessor) ReflectionUtils.getField(chunkProcessorField, tasklet);
                registerItemReadEvents(chunkProvider);
                registerSkipEvents(chunkProvider);
                registerItemProcessEvents(chunkProcessor);
                registerItemWriteEvents(chunkProcessor);
                registerSkipEvents(chunkProcessor);
            }
        }
    }

    return bean;
}
项目:spring-cloud-task    文件:JobSkipConfiguration.java   
@Bean
public Step step1() {
    return stepBuilderFactory.get("step1").tasklet(new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
            System.out.println("Executed");
            return RepeatStatus.FINISHED;
        }
    }).build();
}
项目:spring-cloud-task    文件:JobConfiguration.java   
@Bean
public Step step1() {
    return stepBuilderFactory.get("step1").tasklet(new Tasklet() {
        @Override
        public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
            System.out.println("Executed");
            return RepeatStatus.FINISHED;
        }
    }).build();
}
项目:spring-cloud-task    文件:TaskBatchExecutionListenerTests.java   
@Bean
public Job job() {
    return jobBuilderFactory.get("job")
            .start(stepBuilderFactory.get("step1").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                    System.out.println("Executed");
                    return RepeatStatus.FINISHED;
                }
            }).build())
            .build();
}
项目:spring-cloud-task    文件:TaskBatchExecutionListenerTests.java   
@Bean
public FactoryBean<Job> job() {
    return new FactoryBean<Job>() {
        @Override
        public Job getObject() throws Exception {
            return jobBuilderFactory.get("job")
                    .start(stepBuilderFactory.get("step1").tasklet(new Tasklet() {
                        @Override
                        public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                            System.out.println("Executed");
                            return RepeatStatus.FINISHED;
                        }
                    }).build())
                    .build();
        }

        @Override
        public Class<?> getObjectType() {
            return Job.class;
        }

        @Override
        public boolean isSingleton() {
            return true;
        }
    };
}
项目:spring-cloud-task    文件:TaskBatchExecutionListenerTests.java   
@Bean
public Job job() {
    return jobBuilderFactory.get("job")
            .start(stepBuilderFactory.get("step1").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                    System.out.println("Executed");
                    return RepeatStatus.FINISHED;
                }
            }).build())
            .build();
}
项目:spring-cloud-task    文件:TaskBatchExecutionListenerTests.java   
@Bean
public Job job1() {
    return jobBuilderFactory.get("job1")
            .start(stepBuilderFactory.get("job1step1").tasklet(new Tasklet() {
                @Override
                public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
                    System.out.println("Executed job1");
                    return RepeatStatus.FINISHED;
                }
            }).build())
            .build();
}