Spring Batch
Spring Boot为使用Spring Batch提供了多种便利功能,包括启动时运行作业。
如果 Spring Batch 在你的类路径上可用,它会通过@EnableBatchProcessing注解。
在构建批处理应用时,可以自动配置以下存储:
-
内存内
-
JDBC
每个商店都有特定的额外设置。 例如,可以自定义JDBC存储的表前缀,如下示例所示:
-
Properties
-
YAML
spring.batch.jdbc.table-prefix=CUSTOM_
spring:
batch:
jdbc:
table-prefix: "CUSTOM_"
你可以用以下方式控制 Spring Batch 的配置@EnableBatchProcessing.
这会导致自动配置功能退后。
然后可以通过以下方式配置@Enable*JobRepository注释的属性,而非之前描述的配置属性。
启动时运行Spring Batch作业
当 Spring Boot 自动配置 Spring Batch 时,如果是单一的工作BEAN 出现在应用上下文中,启动时执行(参见JobLauncherApplicationRunner详情)。
如果是多个工作找到豆子后,必须用 来指定应执行的作业spring.batch.job.name.
你可以禁用运行工作在应用上下文中发现,如下示例所示:
-
Properties
-
YAML
spring.batch.job.enabled=false
spring:
batch:
job:
enabled: false
看批处理自动配置和BatchJdbcAutoConfiguration更多细节请阅读。