命名空间支持
你可以使用 XML 元素配置 Spring 集成组件,这些元素直接映射到企业集成的术语和概念。 在许多情况下,元素名称与 Enterprise Integration Patterns 书籍中的名称相匹配。
要在 Spring 配置文件中启用 Spring 集成的核心名称空间支持,请在顶级 'beans' 元素中添加以下名称空间引用和架构映射:
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:int="http://www.springframework.org/schema/integration" xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/integration https://www.springframework.org/schema/integration/spring-integration.xsd">
(我们已经强调了 Spring Integration 特有的行.)
您可以选择 “xmlns:” 之后的任何名称。
为清楚起见,我们使用(Integration 的缩写),但您可能更喜欢其他缩写。
另一方面,如果您使用 XML 编辑器或 IDE 支持,则自动完成的可用性可能会说服您保留较长的名称以清楚起见。
或者,你可以创建使用 Spring 集成模式作为主命名空间的配置文件,如下例所示:int
<beans:beans xmlns="http://www.springframework.org/schema/integration" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans" xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/integration https://www.springframework.org/schema/integration/spring-integration.xsd">
(我们已经强调了 Spring Integration 特有的行.)
当使用这种替代方法时,Spring 集成元素不需要前缀。
另一方面,如果在同一配置文件中定义通用 Spring Bean,则 bean 元素需要前缀 ()。
由于模块化配置文件本身(基于职责或体系结构层)通常是一个好主意,因此您可能会发现在以集成为中心的配置文件中使用后一种方法是合适的,因为在这些文件中很少需要通用 bean。
在本文档中,我们假设集成命名空间是主要命名空间。<beans:bean …/>
Spring 集成提供了许多其他命名空间。
事实上,提供名称空间支持的每个适配器类型(JMS、文件等)都在单独的架构中定义其元素。
要使用这些元素,请使用条目和相应的映射添加必要的命名空间。
例如,以下根元素显示了其中的几个命名空间声明:xmlns
schemaLocation
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:int="http://www.springframework.org/schema/integration"
xmlns:int-file="http://www.springframework.org/schema/integration/file"
xmlns:int-jms="http://www.springframework.org/schema/integration/jms"
xmlns:int-mail="http://www.springframework.org/schema/integration/mail"
xmlns:int-ws="http://www.springframework.org/schema/integration/ws"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/integration
https://www.springframework.org/schema/integration/spring-integration.xsd
http://www.springframework.org/schema/integration/file
https://www.springframework.org/schema/integration/file/spring-integration-file.xsd
http://www.springframework.org/schema/integration/jms
https://www.springframework.org/schema/integration/jms/spring-integration-jms.xsd
http://www.springframework.org/schema/integration/mail
https://www.springframework.org/schema/integration/mail/spring-integration-mail.xsd
http://www.springframework.org/schema/integration/ws
https://www.springframework.org/schema/integration/ws/spring-integration-ws.xsd">
...
</beans>
本参考手册在其相应章节中提供了各种元素的具体示例。 在这里,需要识别的主要内容是每个命名空间 URI 和 schema 位置的命名的一致性。