spring 集成和组件扫描
spring integration and component scan
我是 Spring MVC 的新手,但现在我已经转移到一个新项目,该项目使用 Spring 集成来提供一些服务。 context.xml
中的例子
<int:channel id="example-channel" />
<int:service-activator input-channel="example-channel" ref="exampleServiceFacade" />
对于每个 servicefacade,我必须将服务绑定到一个通道。
我在徘徊,如果我可以将 classes 映射为通道,就像我可以使用组件扫描映射 bean 一样呢?
<context:component-scan base-package="com.package" />
所以我得到了 this 教程,其中谈到了一些注释:
@IntegrationComponentScan
但我不明白它与 xml 标签服务激活器和通道有什么关系。所以我很困惑。有更多经验的人是否知道我正在尝试做的事情是否可以完成?
我只想扫描定义集成通道的 classes,而不必声明每个 class。
谢谢。
你的问题有点不清楚。任何 Spring 集成自定义 XML 标记都由基础架构解析并在应用程序上下文中注册为 beans。就像你通过原始 <bean>
.
那样做
@ComponentScan
、@Configuration
、@Bean
等是标记注释,表示 class 将其视为 bean 的应用程序上下文。
因此,使用这两种技术进行应用程序上下文配置,您不会丢失任何东西,并且可以继续用 @Service
标记您 class 并使用其来自 <service-activator ref="">
的 bean 名称。
现在您可以从另一端完全构建 Spring 集成,而无需任何 XML!请完整阅读上述文档。
我是 Spring MVC 的新手,但现在我已经转移到一个新项目,该项目使用 Spring 集成来提供一些服务。 context.xml
中的例子<int:channel id="example-channel" />
<int:service-activator input-channel="example-channel" ref="exampleServiceFacade" />
对于每个 servicefacade,我必须将服务绑定到一个通道。
我在徘徊,如果我可以将 classes 映射为通道,就像我可以使用组件扫描映射 bean 一样呢?
<context:component-scan base-package="com.package" />
所以我得到了 this 教程,其中谈到了一些注释:
@IntegrationComponentScan
但我不明白它与 xml 标签服务激活器和通道有什么关系。所以我很困惑。有更多经验的人是否知道我正在尝试做的事情是否可以完成?
我只想扫描定义集成通道的 classes,而不必声明每个 class。
谢谢。
你的问题有点不清楚。任何 Spring 集成自定义 XML 标记都由基础架构解析并在应用程序上下文中注册为 beans。就像你通过原始 <bean>
.
@ComponentScan
、@Configuration
、@Bean
等是标记注释,表示 class 将其视为 bean 的应用程序上下文。
因此,使用这两种技术进行应用程序上下文配置,您不会丢失任何东西,并且可以继续用 @Service
标记您 class 并使用其来自 <service-activator ref="">
的 bean 名称。
现在您可以从另一端完全构建 Spring 集成,而无需任何 XML!请完整阅读上述文档。