任何spring batch专家都需要您的帮助:我需要创建一个批处理过程,它从数据库中返回一个id列表,其中每个id随后被用来驱动一个返回一组记录的查询。结果集(每个id)将非常大,那么如何让第二个查询分块,同时迭代地从第一个查询(id列表)驱动?
我遇到的所有示例都处理一个查询,该查询随后被分块,这不是一回事。
发布于 2014-09-16 22:54:46
有两个选项:
JDBC
ItemReader -为其中一个基于的ItemReader实现创建包装器。包装器将查询ids并使用委托来查询块。您的包装器需要维护状态(哪些ids已被读取)以保证可重启,但一般来说,这将是最简单的选择。分区-如果您不必担心id的处理顺序(每个分区=1 id),则按id分区也可以。分区选项只需要自定义的Partitioner实现。其余的将是现成的组件。https://stackoverflow.com/questions/25870838
复制相似问题