当使用编程方式扩展DefaultBatchConfiguration
时,即使属性spring.batch.jdbc.initialize-schema
设置为always
,也不会创建元表。
在扩展DefaultBatchConfiguration
时,是否有办法启用自动模式初始化?
代码示例:
@Configuration
public class JobConfiguration
extends DefaultBatchConfiguration
{
@Override
protected Isolation getIsolationLevelForCreate()
{
return Isolation.READ_COMMITTED;
}
@Bean
public Job job(
JobRepository jobRepository,
Step processStep
)
{
return new JobBuilder("PROCESS_JOB", jobRepository)
.validator(new DefaultJobParamsValidator())
.start(processStep)
.build();
}
// steps definition omitted
}
1条答案
按热度按时间pjngdqdw1#
当您扩展
DefaultBatchConfiguration
时,您可以完全控制如何配置Spring Batch(包括其元数据模式初始化),请参阅Sping Boot 3迁移指南中的Spring Batch Changes。因此,spring.batch.*
属性不会产生任何影响。因此,在您的情况下,您需要手动初始化您希望与SpringBatch一起使用的数据源,并使用所需的元数据表。