当前位置: 首页 > 知识库问答 >
问题:

如何决定批处理开始的时间

海景曜
2023-03-14

我有一个带有spring Batch的spring Boot2应用程序。

实际上,当应用程序启动时,批处理就启动了。

@EnableBatchProcessing
@Configuration
public class CsvFileToDatabaseConfig {

    @Autowired
    public JobBuilderFactory jobBuilderFactory;

    @Autowired
    public StepBuilderFactory stepBuilderFactory;

    @Bean
    public FlatFileItemReader<Billings> billingeReader() {
        ....
    }

    @Bean
    ItemProcessor<Billings, Billings> billingProcessor() {
        ...
    }

    @Bean
    public JdbcBatchItemWriter<Billings> billingWriter() {
        ...
    }

    @Bean
    public Step csvFileToDatabaseStep() {
        ...
    }

    @Bean
    Job csvFileToDatabaseJob(JobCompletionNotificationListener listener) {
        ....
    }

}

共有1个答案

刘昌翰
2023-03-14

问题的答案有两部分:要禁用负责在启动时启动作业的JobLauncherCommandLineRunner,请设置Spring.Batch.jobs.enabled=false(另请参见Spring Boot batch-execluding JobLauncherCommandLineRunner)。要从应用程序逻辑启动作业,请注入joblauncherbean并将作业bean连同适当的作业参数一起传递给它的启动方法。

 类似资料:
  • 我正在使用spring batch,在执行批处理作业时,我得到了一个InvalidIsolationLevelException。当我使用MapJobRepositoryFactoryBean时,该作业可以工作,但我需要在数据库中生成batch_*表。 应用程序已经设置了事务管理器。

  • 我开始使用Spring批处理,我有一个关于何时使用步骤、决策器和块的问题。 考虑到以下输入: 对于每个

  • 我们目前正在将一个复杂的spring boot batch+admin UI系统迁移到一个spring-cloud-task基础设施中,该基础设施将被管理云数据流。 作为POC的第一阶段,我们必须能够将所有Spring批处理作业打包在同一个部署JAR下,并且能够使用自定义作业参数一个接一个地运行它们,并且支持某种REST API远程执行作业/任务。 我们删除了所有spring-batch管理依赖项

  • 问题内容: 我是Python的新手,对日期/时间文档感到困惑。我想计算执行计算所需的时间。 在Java中,我会这样写: 我确信在Python中它甚至更容易。有人可以帮忙吗? 问题答案: 在python中等效为: 如果您试图找到性能最好的方法,那么您可能应该看看。

  • 决策结构要求程序员指定一个或多个要由程序进行评估或测试的条件,以及如果条件被确定为,则执行的语句或语句,以及可选地,如果 条件被确定为。 编号 条件结构 描述 1 if语句 第一个决策语句是语句。 2 if/else语句 下一个决策语句是语句。 3 嵌套if语句 有时候,要求有多个嵌套的语句。

  • 我希望能够用REST控制器开始我的作业,然后当作业开始时,它应该在计划的基础上运行,直到我用REST再次停止它。