Spring Integration全局变量

时间:2014-06-02 15:03:55

标签: spring-integration

这是我的问题..

我计划在spring集成框架中使用聚合器。

我想使用id对消息进行分组并将它们发送到管道以进行进一步处理,但我还想将这些消息分组到不同的字段集上并创建一个散列映射,该散列映射将被我分组的所有消息使用使用第一个标准,所以这个hashmap是一个全局变量。

实施例。 消息1: 执行ID:100 帐号:1234 CUSIP:IBM 数量:10

消息2: 执行ID:100 帐号:4321 CUSIP:IBM 量:20

消息3: 执行ID:200 帐号:1234 CUSIP:IBM 数量:30

消息4: 执行ID:200 帐号:4321 CUSIP:IBM 数量:40

我希望通过为每个帐户ID和cusip添加数量来维护全局哈希映射 核心价值 1234,IBM-> 40 4321,IBM-> 60 并根据执行ID聚合这4条消息,并在管道中发送2条消息。

我希望我不会提供太多细节并导致混淆。

我有两个问题。 1.如何维护该全局hashmap并将其用于进一步管道的消息? 2.聚合器是否是这类问题的正确选择?

期待您的回应!

谢谢! Supriya

1 个答案:

答案 0 :(得分:1)

您还不完全清楚您想要全局哈希图,但是,是的,您可以在多个字段上进行汇总,只需使用适当的correlation-expression(或使用自定义CorrelationStrategy #39;对于表达来说太复杂了。)

您可以创建<bean/>,例如一个ConcurrentHashMap并从你的bean中引用它,甚至使用表达式来添加它。