如何解决具有单个数据源的SpringBoot +批处理+ Cloud Task @EnableTask注释导致“序列不存在”问题
当前,我正在将SpringBoot(2.3.3版)和Batch(4.2.4版)以及spring-cloud-starter-tsk(2.2.3版)与单个数据源(oracle)结合使用。我的BatchConfiguration扩展了DefaultBatchConfigurer并设置了setDataSource。现在,我尝试连接Oracle数据库并读取记录并生成平面文件。
我遇到了错误,奇怪的是我能够获得数据源,并且SEQUENCE(TASK_SEQ)在DB中可用。
请在下面找到我的其他文件
- BatchConfiguraton.java是
解决方法
在批处理配置中,您正在使用MapJobRepositoryFactoryBean
来创建基于Map的JobRepository内存。您需要删除它,并按照参考文档Configuring a JobRepository中的说明使用指向您的Oracle数据源的基于JDBC的作业存储库。
在运行作业之前,您需要确保在Oracle数据库中创建了Spring Batch元数据表。
对于Spring Cloud Task也应进行相同的配置。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。