Eug*_*kov 5 java design-patterns spring-integration
只是一个简单的问题: 有没有办法通过注释配置Spring Integration Control Bus(没有任何xml)
<control-bus input-channel="operationChannel"/>
Run Code Online (Sandbox Code Playgroud)
?
在Spring集成的Java DSL提供了对此事的东西:
@Bean
public IntegrationFlow controlBusFlow() {
return IntegrationFlows.from("operationChannel").controlBus().get();
}
Run Code Online (Sandbox Code Playgroud)
@Bean
@ServiceActivator(inputChannel = "controlBusChannel")
public ExpressionControlBusFactoryBean controlBus() throws Exception {
ExpressionControlBusFactoryBean controlBus = new ExpressionControlBusFactoryBean();
return controlBus;
}
Run Code Online (Sandbox Code Playgroud)
请注意,注释中的任何outputChannel
内容都将被忽略; 它是在公交车上定义的.
通常,控制总线的输出通道被省略,其中正常的请求/应答操作的结果,例如@someBean.isRunning()
(如果someBean实现Lifecycle
)返回到replyChannel
头部(例如,到MessagingTemplate.sendAndReceive()
操作或消息传递网关).
如果需要将控制总线操作结果发送到其他位置,请将输出通道添加到工厂bean.
MessageHandler
@Bean
现在可以使用任何(或创建一个的工厂bean)进行注释@ServiceActivator
.请参阅文档.
归档时间: |
|
查看次数: |
2290 次 |
最近记录: |