【问题标题】:Efficient way to query database from a program processing big list of items从处理大项目列表的程序中查询数据库的有效方法
【发布时间】:2011-08-19 09:16:22
【问题描述】:

我有一个带有 itemReader、itemProcessor 和 itemWriter 的 spring 批处理程序。

假设我有 10,000 条记录要处理。对于每个项目,我想从几个数据库表中获取数据,以确定一些条件并添加一些数据。

我相信这将在处理过程中完成。

问题:最好的设计是什么?对于在 itemProcessor 中注入 SimpleJdbcTemplate 的每个项目运行多个 Select 查询,我有点怀疑。还有其他有效的方法吗??

提前致谢!! 尼克

【问题讨论】:

  • 如何使用一组连接从您需要考虑的其他表中引入数据?
  • @cdhowie:是的。但在这里,我将不得不为 10000 条记录中的每一条运行连接查询。正确的 ?你能举个例子吗?
  • 您将运行一个查询来获取 10,000 条记录并将它们连接到您需要考虑的其他表。因此,您应该能够在一次查询中获得所需的所有数据。如果没有有关您的表和所涉及的查询的更多信息,我真的无法提供示例。
  • @cdhowie:假设我有 10000 个 POJO 列表,其中包含 4 个属性 A、B、C、D.A、B、C 值,我正在使用 itemReader 读取。但是,D 中的值是在 itemProcessor 中设置的。如何 ?通过需要查询不同数据库中的 2、3 个表的复杂逻辑。这一步我必须对所有 10000 个 POJO 执行。一个查询怎么可能?

标签: database spring dependency-injection spring-batch


【解决方案1】:

也许您应该将 10,000 个“POJO”插入数据库中的一个表中,然后运行一个查询将其连接到其他表?

【讨论】:

  • 感谢托尼的回答!!让我看看能不能做到!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多