spring 集成中的服务激活器组件是什么?
What is service activator component in spring integration?
我正在学习 spring 集成 reading/watching 不同的东西,但我不明白什么是服务激活器。
我了解到集成有两种类型:
香奈儿和网关。 chanel 是单向集成,而 gateways 是 request/reply 模型。网关可以是入站(我们的系统获取请求并发送响应)和出站(我们的系统发送请求并接收响应)
当我阅读有关网关的内容时,我经常会看到终端 "service activator"
你能解释一下这是什么意思吗?
服务激活器是对 bean 中方法的调用。
<service-activator ref="myService" method="aMethod"/>
会打电话
@Service
public class MyService {
public A aMethod(@Header(value = "param1") String param){
//code
}
}
@Header 注释允许使用 header 中的现有值。这是一个例子。
你也可以这样使用:
<service-activator expression="@myService.aMethod('My param')"/>
outbound gateway
本质上是 request/reply 场景的 service activator
抽象的特例。另一种情况是 outbound channel adapter
,它是单向的,但仍然可以视为 service activator
,因为当我们向其 inputChannel
发送消息时,我们将调用一些代码- 我们可以将其视为一项服务。因此激活它。
通用组件 service activator
存在于特定实现未涵盖的所有用例中。让我们假设您需要调用一些 REST 服务。是的,您可以使用具有某些特定选项的 HTTP 出站网关。或者您可以编写一些使用 RestTemplate
来调用该服务的自定义代码。您将代码包装到 service activator
配置中,最终整个集成解决方案的行为相同。
我正在学习 spring 集成 reading/watching 不同的东西,但我不明白什么是服务激活器。
我了解到集成有两种类型:
香奈儿和网关。 chanel 是单向集成,而 gateways 是 request/reply 模型。网关可以是入站(我们的系统获取请求并发送响应)和出站(我们的系统发送请求并接收响应)
当我阅读有关网关的内容时,我经常会看到终端 "service activator"
你能解释一下这是什么意思吗?
服务激活器是对 bean 中方法的调用。
<service-activator ref="myService" method="aMethod"/>
会打电话
@Service
public class MyService {
public A aMethod(@Header(value = "param1") String param){
//code
}
}
@Header 注释允许使用 header 中的现有值。这是一个例子。
你也可以这样使用:
<service-activator expression="@myService.aMethod('My param')"/>
outbound gateway
本质上是 request/reply 场景的 service activator
抽象的特例。另一种情况是 outbound channel adapter
,它是单向的,但仍然可以视为 service activator
,因为当我们向其 inputChannel
发送消息时,我们将调用一些代码- 我们可以将其视为一项服务。因此激活它。
通用组件 service activator
存在于特定实现未涵盖的所有用例中。让我们假设您需要调用一些 REST 服务。是的,您可以使用具有某些特定选项的 HTTP 出站网关。或者您可以编写一些使用 RestTemplate
来调用该服务的自定义代码。您将代码包装到 service activator
配置中,最终整个集成解决方案的行为相同。