配置
Spring Integration 提供了多种配置选项。您选择哪种选项取决于您的具体需求以及您更倾向于在哪个层级进行操作。与 Spring 框架整体一样,您可以混合搭配各种技术以适应手头的问题。例如,您可以为大部分配置选择基于 XSD 的命名空间,并将其与一些通过注解配置的对象相结合。两者在命名上尽可能保持一致:XSD 模式定义的 XML 元素与注解的名称相匹配,而这些 XML 元素的属性则与注解属性的名称相匹配。您也可以直接使用 API,但我们预计大多数开发者会选择更高级别的选项之一,或者结合使用基于命名空间和注解驱动的配置。
章节总结
📄️ 命名空间支持
您可以通过XML元素配置Spring Integration组件,这些元素直接对应企业集成的术语和概念。在许多情况下,元素名称与《企业集成模式》一书中的名称保持一致。
📄️ 配置任务调度器
在 Spring Integration 中,ApplicationContext 扮演着消息总线的核心角色,您只需考虑几个配置选项。首先,您可能需要控制中心 TaskScheduler 实例。您可以通过提供一个名为 taskScheduler 的单一 bean 来实现。该名称也被定义为常量,如下所示:
📄️ 全局属性
某些全局框架属性可以通过在类路径上提供属性文件来覆盖。
📄️ 注解支持
除了通过XML命名空间配置消息端点外,您还可以使用注解。首先,Spring Integration提供了类级别的@MessageEndpoint作为构造型注解,这意味着它本身已通过Spring的@Component注解进行标注,因此能够被Spring的组件扫描机制自动识别为Bean定义。
📄️ 消息传递元注解
从 4.0 版本开始,所有消息注解都可以配置为元注解,并且所有用户定义的消息注解都可以定义相同的属性来覆盖其默认值。此外,元注解可以分层配置,如下例所示:
📄️ 消息映射规则与约定
Spring Integration 实现了一种灵活的机制,能够将消息映射到方法及其参数,而无需提供额外配置,这是通过依赖一些默认规则和定义特定约定来实现的。以下各节中的示例将详细阐述这些规则。