Spring integration 将消息驱动的通道适配器xml转换为注释
我正在尝试将我正在工作的spring集成xml配置转换为注释,我想知道应该为消息驱动的通道使用什么注释,或者是否有注释?会是@JMSListener吗Spring integration 将消息驱动的通道适配器xml转换为注释,spring-integration,Spring Integration,我正在尝试将我正在工作的spring集成xml配置转换为注释,我想知道应该为消息驱动的通道使用什么注释,或者是否有注释?会是@JMSListener吗 <jms:message-driven-channel-adapter id="jmsIn" channel="jmsInChannel" destination="request" error-channel="errorChannel"/> 不,您不需要担心任何注释 的类是JmsM
<jms:message-driven-channel-adapter id="jmsIn"
channel="jmsInChannel"
destination="request"
error-channel="errorChannel"/>
不,您不需要担心任何注释
的类是JmsMessageDrivenEndpoint
,因为它是消息驱动的
,所以它本身就是一个东西
因此,您应该将其声明为@Bean
,以及它的依赖项
从另一个角度来看,如果您要提供足够的AbstractMessageListenerContainer
和ChannelPublishingJmsMessageListener
依赖项定制,那么这可能会有点复杂
考虑使用针对类似混乱情况引入的配置:简化XML配置向Java&Annotations配置移动的方式
您可以在这里找到JMS适配器的测试:这需要使用Java8LAMDA吗?我现在只在6号。不,没有。无论如何,您都可以在Java6中使用它。但是正确:您必须实例化所有这些内联接口,而不是Java 8 lambda。您是否会说,如果您不在Java 8上,最好还是坚持使用spring集成注释/spring xml混合方法,而不是DSL?在这种情况下,似乎需要创建很多额外的代码来移植XML。好吧,从很大的高度来看,这就是为什么我们有这些消息传递注释。但从另一方面看,这取决于流程的复杂性:如果您认为xml类型而不是Java方法链更好,那么这是您的选择。无论如何,我们推荐JavaDSL,因为它包含了大量的boilreplate代码。加上IDE帮助完成代码和java文档。请用更具体的请求开始一个新问题。您需要
AbstractMessageListenerContainer
和ChannelPublishingJmsMessageListener
bean注入JmsMessageDrivenEndpoint
。我不明白将XML属性映射到这些对象的适当设置器的问题在哪里。