有没有办法在Spring中使用带有延迟事件的ApplicationEventPublisher?

时间:2017-10-30 08:34:34

标签: java spring spring-mvc spring-integration spring-messaging

我需要使用事件驱动机制。使用ApplicationEventPublisher。我想在到达侦听此事件的端点之前设置消息的延迟。有这样的方式吗?发现https://docs.spring.io/spring-integration/docs/2.0.0.RC1/reference/html/delayer.html但不确定它应该如何与ApplicationEventPublisher集成。

有没有一种简单的方法可以使用spring来实现上述目标?

1 个答案:

答案 0 :(得分:1)

除了Delayer之外,Spring Integration还根据传入消息向ApplicationEventPublishingMessageHandler生成ApplicationEvent生成器ApplicationEventPublisher。这样,您真的会延迟<delayer>中的消息(事件),然后通过<int-event:outbound-channel-adapter>将事件发布到应用程序。

还要考虑使用尽可能晚的Spring Integration版本:https://projects.spring.io/spring-integration/