具有异构输入的弹簧集成应用程序设计&输出

时间:2018-04-04 15:16:39

标签: java spring-integration

我是Spring-integration的新手,并试图在java中设计一个相对抽象的架构,可以容纳各种性质的输入和输出。 例如输入:选择文件或获取http请求或从DB等读取.. 输出:发送电子邮件或http回复(例如json)或创建报告/ pdf /等等。 对于应用程序中的此类进入/退出点,什么可能是一个好的设计? 例如,在输入端,我可以使用几个可能连接到同一输入通道的不同网关或适配器,然后可以从中解析和处理输入的性质吗?

任何关于此类进入/退出点的良好设计的建议/示例都将非常受欢迎。

干杯

1 个答案:

答案 0 :(得分:1)

是的,你可以用Spring Integration做到这一点。

入站通道适配器(针对各种目标协议)确实可以将其消息发送到同一通道。在那里,您可以应用Service Activator中的任何复杂逻辑。或添加路由器以向不同的下游流发送不同的消息。

在输出上,您可以使用PublishSubscribeChannel将相同的消息发送到不同的输出 - 出站通道适配器。

我们可能没有这样的样本,但这里有一个现有的集合:https://github.com/spring-projects/spring-integration-samples