Java 运行时具有多个数据源的spring批处理
我必须在表中的一些已配置数据库之间爬行。其中每个记录指定要从中读取的模式。因此,我们必须轮询表并适当地运行作业 考虑使用SpringBatch(JdbcPagingItemReader)从所有配置的模式中读取数据。如果我必须对此进行配置,如何使用Spring批处理进行配置 我应该为每个数据库读取多个具有不同读取器的作业,还是有任何方法可以在运行时发送数据源,以便Spring批处理从中读取数据Java 运行时具有多个数据源的spring批处理,java,datasource,spring-batch,Java,Datasource,Spring Batch,我必须在表中的一些已配置数据库之间爬行。其中每个记录指定要从中读取的模式。因此,我们必须轮询表并适当地运行作业 考虑使用SpringBatch(JdbcPagingItemReader)从所有配置的模式中读取数据。如果我必须对此进行配置,如何使用Spring批处理进行配置 我应该为每个数据库读取多个具有不同读取器的作业,还是有任何方法可以在运行时发送数据源,以便Spring批处理从中读取数据 如何为单个Spring批处理管理多个数据库。如果没有,对数据库爬网(或获取)还有其他建议吗?如果您只是运
如何为单个Spring批处理管理多个数据库。如果没有,对数据库爬网(或获取)还有其他建议吗?如果您只是运行一个查询来获取一些数据,然后再运行其他查询,那么这与Spring Batch所做的并不一致。这只是一个标准的JDBC或JPA类型的DAO/服务设置。您可以使用Quartz或Spring Scheduler在检查表时设置CRON值 使用Spring Batch有两种解决方案:
- 在运行时通过
传递JobParameters
属性(url、用户名、密码……)。这意味着第一次读取的读取逻辑(告诉您要读取什么的逻辑)必须在作业之外完成DataSource
- 有一个包含两个步骤的作业,第一个步骤执行“元数据”读取并将结果存储在
中,第二个步骤使用以前在运行时存储的值执行实际读取JobExecutionContext