使用 @EnableBatchProcessing 指定 JobRepository 隔离级别

Specify JobRepository Isolation Level with @EnableBatchProcessing

我正在使用 Java 批注创建 Spring 批处理应用程序。我有 @EnableBatchProcessing 注释,所以我没有明确定义 JobRepository 或 JobRepositoryFactory。直到今天,当我开始收到 "ORA-08177: can't serialize access for this transaction" 错误时,它一直运行良好。

如何更改我未创建或与之交互的 JobRepository 的隔离级别?

"How can I change the isolation level on a JobRepository I don't create or interact with?" 简而言之,你没有。您需要自己创建它,方法是扩展 DefaultBatchConfigurer 并覆盖 createJobRepository 方法以提供您自己的自定义实例。