Java 春季投票+;冬眠

Java 春季投票+;冬眠,java,spring-integration,Java,Spring Integration,场景:每隔“n”秒轮询数据库并检索列表。执行一些内部业务验证。如果验证仅成功,则将检索到的列表发送到外部系统。从该系统接收确认响应(收到此响应后,轮询器应发送下一个列表)。然后执行一些业务操作,如调用不需要轮询的其他系统。 有人能告诉我如何处理这种情况吗 poller.xml 如果您使用固定延迟选项,并且您的下游流是单线程的(仅DirectChannels),则默认情况下,会为您这样做。在这种情况下,下一个轮询任务(在您使用JPA读取DB的情况下)将在前一个轮询任务完成之前不会启动,并且需要

场景:每隔“n”秒轮询数据库并检索列表。执行一些内部业务验证。如果验证仅成功,则将检索到的列表发送到外部系统。从该系统接收确认响应(收到此响应后,轮询器应发送下一个列表)。然后执行一些业务操作,如调用不需要轮询的其他系统。 有人能告诉我如何处理这种情况吗

poller.xml


如果您使用
固定延迟
选项,并且您的下游流是单线程的(仅
DirectChannel
s),则默认情况下,
会为您这样做。在这种情况下,下一个轮询任务(在您使用JPA读取DB的情况下)将在前一个轮询任务完成之前不会启动,并且需要一段时间,比如
固定延迟
。请参见周期性装配工,顺便说一句

关于您的“然后执行一些业务操作”。您只需将“接收确认响应”之后的下一个通道设置为
ExecutorChannel
,以便为下一次轮询释放轮询线程


您应该在Spring集成参考手册中阅读更多内容,尤其是有关的。

这个问题太宽泛了;读这本书。当你理解了基本概念;阅读有关JPA支持的部分。至少有一种将JPA与hibernate结合使用。完成所有这些之后,如果有具体问题,请回到这里。???不确定您有什么问题,但我们无法帮助您编码。您应该向我们演示一些PoC,并指出卡在哪里。否则听起来像:请帮我写申请表!好吧,我告诉过你如何处理:只使用
固定延迟
直接频道
s。您应该只将该外部服务的应答转移到
ExecutorChannel
,以执行下一个逻辑,并释放当前线程以执行下一个轮询任务,从而通过Hibernate检索新的实体列表。你还想听什么?:-)。不,我真的很想帮助你,如果能听到你那边的“万岁,一切顺利!”那就太好了。但是我不喜欢人们不尝试自己编写代码而是向我们索取代码。因此,如果你有一些代码需要跟进,我们可以根据你的要求对其进行润色…我已经编辑了这个问题。你能看一下吗..正如你所说,我已经添加了direct频道和executer频道。。