【问题标题】:jdbc inbound adapter with a stored procedure cursor带有存储过程游标的 jdbc 入站适配器
【发布时间】:2014-06-04 18:42:49
【问题描述】:

Jdbc 入站通道适配器依赖于更新查询来标记已处理的记录,这就是我们如何在后续轮询中仅检索未处理的记录的方式。这是有道理的,但我正在使用一个没有我可以修改的列以指示正在处理的记录的表。

我想知道我是否可以使用返回游标的存储过程,并且以某种方式有助于不必在内存中加载所有比如说百万条记录,并且仍然能够处理假设每个轮询 1000 条。

编辑:我正在使用 oracle

【问题讨论】:

    标签: spring-integration


    【解决方案1】:

    是的,你可以使用存储过程就可以了。为此,Spring Integration 建议使用 <int-jdbc:stored-proc-inbound-channel-adapter> 组件。

    Here你可以找到样品。

    【讨论】:

    • 仍然不清楚存储过程是否使用游标对适配器意味着什么。它仍然会一次尝试获取所有记录还是能够多次轮询存储过程并获取下一组要处理的行
    • 没有。每个poll 调用过程,它取决于最后一个,如何从数据库返回数据。如果是cursor,则应提供RowMapper 以将该数据填充为List<?>。并且适配器将发送一条消息,该列表是Map<String, ?> 有效负载的一部分。在我们的文档中查看更多信息:docs.spring.io/spring-integration/docs/latest-ga/reference/html/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-22
    相关资源
    最近更新 更多