Ole*_*e-M 5 java spring spring-batch spring-data-jpa
我想从与 BATCH_JOB_INSTANCE 表连接的 BATCH_JOB_EXECUTION 表中获取 10 条最新记录。
那么如何访问这些表呢?
在这个应用程序中,我使用了 Spring Data JPA。这是另一个使用 Spring Batch 并创建这些表的应用程序。换句话说,我只想运行一个 JOIN 查询并将它直接映射到我的自定义对象,只包含必要的字段。尽可能避免为两个表制作单独的模型。但我不知道这里的最佳方法。
如果您想从 Spring Batch 代码执行此操作,则需要使用JobExplorerSTART_TIME并在或上应用过滤器END_TIME。或者,只需使用 JDBC将SQL您想要的查询发送到数据库即可。可以在此处找到元数据表的JOIN信息。DDLs
编辑
如果你想尝试在 SpringBatch 中做到这一点,我想你需要迭代JobExecutions并找到你感兴趣的那些,然后做你的事情))一些事情。喜欢:
List<JobInstance> jobInstances = jobExplorer.getJobInstances(jobName);
for (JobInstance jobInstance : jobInstances) {
List<JobExecution> jobExecutions = jobExplorer.getJobExecutions(jobInstance);
for (JobExecution jobExecution : jobExecutions) {
if (//jobExecution.getWhatever...)) {
// do your thing...
}
}
}
Run Code Online (Sandbox Code Playgroud)
祝你好运!