Spring batch 如何使用Spring批处理从Spring集成通道读取消息?

Spring batch 如何使用Spring批处理从Spring集成通道读取消息?,spring-batch,spring-integration,Spring Batch,Spring Integration,我现有的spring集成应用程序将POJO消息转储到一个通道。我如何钩住spring批处理,使其能够从该通道实时读取消息?我是否需要创建一个自定义的ItemReader,或者是否有现成的东西可以使用?一个简单的XML配置示例也会有所帮助 我不知道任何“开箱即用”的东西,但在项目阅读器中包装可轮询频道(通常是队列频道)是很简单的,只需在读取()中使用频道.receive(timeout) 当超时过期时,读卡器返回null;表示批次结束。谢谢——这是一个非常好的建议!在我的情况下,通道将始终获取数据

我现有的spring集成应用程序将POJO消息转储到一个通道。我如何钩住spring批处理,使其能够从该通道实时读取消息?我是否需要创建一个自定义的ItemReader,或者是否有现成的东西可以使用?一个简单的XML配置示例也会有所帮助

我不知道任何“开箱即用”的东西,但在
项目阅读器中包装
可轮询频道(通常是
队列频道
)是很简单的,只需在
读取()中使用
频道.receive(timeout)


当超时过期时,读卡器返回null;表示批次结束。

谢谢——这是一个非常好的建议!在我的情况下,通道将始终获取数据,因此批处理作业似乎永远不会结束。另外,我不确定通道上的第一条消息是否会触发批处理作业,因此我需要以某种方式启动该作业。我读过您建议在服务激活器中包装JdbcBatchItemWriter以支持批插入的地方——我将尝试这种方法;这是专门关于批写入JDBC的;要启动作业,应使用作业启动网关;看,哦,;我明白了,你的意思是使用INT-3364技术,而不是使用批处理作业;很抱歉误解了。