Spring Batch
Spring Boot 為使用 Spring Batch 提供了多種便利,包括在啟動時執行作業。
如果 Spring Batch 在你的 classpath 中可用,它將透過 @EnableBatchProcessing 註解進行初始化。
構建批處理應用程式時,可以自動配置以下儲存:
-
記憶體
-
JDBC
每個儲存都有特定的附加設定。例如,可以為 JDBC 儲存自定義表字首,如以下示例所示:
-
屬性
-
YAML
spring.batch.jdbc.table-prefix=CUSTOM_
spring:
batch:
jdbc:
table-prefix: "CUSTOM_"
你可以使用 @EnableBatchProcessing 控制 Spring Batch 的配置。這將導致自動配置回退。然後,可以使用 @Enable*JobRepository 註解的屬性而非前面描述的配置屬性來配置 Spring Batch。
在啟動時執行 Spring Batch 作業
當 Spring Boot 自動配置 Spring Batch,並且在應用程式上下文中找到一個 Job bean 時,它會在啟動時執行(詳見 JobLauncherApplicationRunner)。如果找到多個 Job bean,則必須使用 spring.batch.job.name 指定應執行的作業。
你可以停用執行應用程式上下文中找到的 Job,如以下示例所示:
-
屬性
-
YAML
spring.batch.job.enabled=false
spring:
batch:
job:
enabled: false
更多詳情請參閱 BatchAutoConfiguration 和 BatchJdbcAutoConfiguration。