87. 批量申请

本部分回答了将 Spring Batch 与 Spring Boot 结合使用所引起的问题。

Note

默认情况下,批处理应用程序需要DataSource来存储作业详细信息。如果要偏离此范围,则需要实现BatchConfigurer。有关更多详细信息,请参见@EnableBatchProcessing 的 Javadoc

有关 Spring Batch 的更多信息,请参见Spring Batch 项目页面

87.1 在启动时执行 Spring Batch 作业

通过在上下文中的某个位置添加@EnableBatchProcessing(来自 Spring Batch)来启用 Spring Batch 自动配置。

默认情况下,它在启动时在应用程序上下文中执行 all Jobs(有关详细信息,请参见JobLauncherCommandLineRunner)。您可以通过指定spring.batch.job.names(以逗号分隔的作业名称模式列表)来缩小到一个或多个特定作业。

Tip

与命令行选项参数在环境中设置属性(即以--开头,例如--my-property=value)不同,作业参数必须在命令行上指定,而不用破折号(例如jobParam=value)。

如果应用程序上下文包括JobRegistry,则在注册表中查找spring.batch.job.names中的作业,而不是从上下文中自动装配。这是更复杂的系统的常见模式,其中多个作业在子上下文中定义并集中注册。

有关更多详细信息,请参见BatchAutoConfiguration@EnableBatchProcessing