内容丰富器与具有回复通道的服务激活器之间有什么区别?

What is the difference between a content enricher vs Service Activator with a reply channel?

http://www.enterpriseintegrationpatterns.com/patterns/messaging/DataEnricher.html

http://www.enterpriseintegrationpatterns.com/patterns/messaging/MessagingAdapter.html

如果有响应通道,服务激活器似乎与增强器完全相同。

参见Spring Integration documentation

使用服务激活器,输入消息被输出消息替换。

有了浓缩剂;输入消息已停放;我们向某个下游流发送一条消息(可能与输入消息不同),结果 returns。

然后我们 "enrich" 输入消息(通过添加来自回复的信息)来生成输出消息。

例如;假设您有一个带有客户 ID 的 Order 对象,并且您希望通过添加客户名称来增强它;您可以使用 enricher 为客户发送查找请求;然后在订单上设置客户名称属性。

当然,您可以在您的服务中做同样的事情,但使用增强器您不必编写任何代码 - 这是您的选择。