如何在Spring集成中聚合拆分拆分器的消息?

时间:2014-12-12 13:18:00

标签: spring-integration

在Spring Integration中使用拆分器,我拆分了从数据库中的表中选择的数据行。 在每条消息完成该过程之后,我想将每条消息聚合为一条消息,就像旧消息一样。我能怎么做?我不知道拆分器拆分了多少消息。我所知道的只是拆分消息标题中的相关ID。即使我汇总了消息,我也无法制定发布策略。

我该如何解决这个问题?

有没有办法一次使用jdbc-outbound-gateway或jdbc-outbound-channel-adapter插入多行数据而不使用拆分器插入每一行?

1 个答案:

答案 0 :(得分:2)

实际上,如果您使用默认的拆分器策略,它将填充整个SequenceDetails,包括sequenceSize。最后,具有默认策略的聚合器可以关联消息并使用SequenceDetails释放它们。

当然,如果您使用自定义拆分逻辑,则应手动提供这些标头。如果您知道大小,当然 - MessageBuilder#pushSequenceDetails为每个拆分的消息。

在这部分中,我们需要了解有关您案例的更多信息。你的代码的一些例子也很棒。

重新。批量插入:https://jira.spring.io/browse/INT-3364。如你所见,我们还没有实现它。但是,使用JdbcTemplate

中的直接<outbound-channel-adapter>用法来解决问题就足够了