Spring integration Spring集成全局变量

Spring integration Spring集成全局变量,spring-integration,Spring Integration,这是我的问题 我计划在spring集成框架中使用聚合器 我想使用一个id对消息进行分组,并将它们发送到管道中进行进一步处理,但我还想将这些消息分组到一组不同的字段上,并创建一个hashmap,该hashmap将由我使用第一个条件分组的所有消息使用,因此该hashmap是一种全局变量 例如。 信息1: 执行编号:100 帐号:1234 cusip:IBM 数量:10 信息2: 执行编号:100 帐号:4321 cusip:IBM 数量:20 信息3: 执行编号:200 帐号:1234 cusip:

这是我的问题

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

我想使用一个id对消息进行分组,并将它们发送到管道中进行进一步处理,但我还想将这些消息分组到一组不同的字段上,并创建一个hashmap,该hashmap将由我使用第一个条件分组的所有消息使用,因此该hashmap是一种全局变量

例如。 信息1: 执行编号:100 帐号:1234 cusip:IBM 数量:10

信息2: 执行编号:100 帐号:4321 cusip:IBM 数量:20

信息3: 执行编号:200 帐号:1234 cusip:IBM 数量:30

信息4: 执行编号:200 帐号:4321 cusip:IBM 数量:40

我想通过为每个帐户id和cusip添加数量来维护一个全局hashmap 关键值 1234,IBM->40 4321,IBM->60 并根据执行id聚合这4条消息,并沿管道发送2条消息

我希望我没有给出太多细节,也没有造成混乱

我有两个问题。 1.如何维护这个全局hashmap,并将其用于管道下游的消息? 2.聚合器是解决这类问题的正确选择吗

期待您的回复

谢谢!
Supriya

不完全清楚您想要全局hashmap做什么,但是,是的,您可以在多个字段上进行聚合,只需使用适当的
相关表达式(或者使用自定义
相关策略,如果它对于表达式来说太复杂)

您可以创建一个
,例如
ConcurrentHashMap
,并从bean中引用它,甚至可以使用表达式添加到它