如何在Spring批处理中使用单个作业/ JMSwriter在多个队列上发布

时间:2013-03-18 17:34:13

标签: spring batch-processing spring-batch jmstemplate

我是Spring Batch的新手,最近开始使用它。

我有一个要求,我需要使用单个Job发布/写入从不同队列中的每个DB记录读取的消息。因为我必须使用阅读器从DB读取消息并使用处理器来决定我必须发布哪个队列。

所以我的问题是我可以使用单个JMSwriter在不同的队列上发布消息,因为我必须使用单个Job和DB Reader。

先谢谢

1 个答案:

答案 0 :(得分:0)

据我所知JMSwriter不支持它(它写入默认目的地jmsTemplate)。

但是你可以实现自己的ItemWriter,在其中注入所有jmsTemplates并编写自定义决策逻辑来选择适当的destionation并写入它。

另一种方法 - 使用ClassifierCompositeItemWriter,为其添加一组JmsWriters并通过分类器选择一个