弹簧集成和组件扫描

时间:2015-06-19 10:30:11

标签: java spring spring-mvc spring-integration

我是Spring MVC的新手,但现在我已经转移到一个新项目,该项目使用Spring Integration为频道提供一些服务。 context.xml中的示例

<int:channel id="example-channel" />
    <int:service-activator input-channel="example-channel" ref="exampleServiceFacade" />

对于每个servicefacade,我必须将服务绑定到一个频道。

我在徘徊,如果我可以将类映射到通道中,因为我可以使用组件扫描映射bean,该怎么办?

<context:component-scan base-package="com.package" />

所以我最后得到了this教程,其中提到了一些注释:

@IntegrationComponentScan

但我无法理解它是如何与xml标签服务激活器和通道相关的......所以我很困惑。有经验的人有没有想法我能做什么?

我只想扫描在集成中定义通道的类,而不必声明每个类。

感谢。

1 个答案:

答案 0 :(得分:2)

你的问题有点不清楚。任何Spring Integration自定义XML标记都由基础结构解析,并在应用程序上下文中注册为bean。与您一样,通过原始<bean>

@ComponentScan@Configuration@Bean等是标记注释,表示应用程序上下文哪些类视为bean。

因此,使用这两种技术进行应用程序上下文配置时,您不会丢失任何内容,并且可以继续使用@Service标记您的类,并使用<service-activator ref="">中的bean名称。

从现在开始,您可以完全构建没有任何XML的Spring Integration!请完整阅读上述文档。