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。