# 集成端点
# 端点快速参考表
正如前面几节中所讨论的, Spring 集成提供了许多端点,这些端点用于与外部系统、文件系统和其他系统进行接口。
对于透明的依赖管理 Spring,集成提供了要导入到 Maven 配置中的材料清单 POM:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-bom</artifactId>
<version>5.5.9</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
总结一下:
入站通道适配器用于单向集成,以将数据带入消息传递应用程序。
出站通道适配器用于单向集成,以将数据发送到消息传递应用程序之外。
入站网关用于双向集成流,其中其他一些系统调用消息传递应用程序并接收答复。
出站网关用于双向集成流,其中消息传递应用程序调用某些外部服务或实体并期望得到结果。
下表总结了各种端点,并提供了与相应章节的快速链接。
此外,如核心消息传递中所讨论的, Spring 集成提供了与普通旧 Java 对象接口的端点。正如通道适配器中所讨论的,<int:inbound-channel-adapter>
元素允许你轮询 Java 方法中的数据。<int:outbound-channel-adapter>
元素允许你将数据发送到void
方法。正如消息传递网关中所讨论的,<int:gateway>
元素允许任何 Java 程序调用消息流。所有这些都可以工作,而不需要对 Spring 集成有任何源码级依赖。在此上下文中,相当于出站网关的方法是使用服务激活器(参见服务激活器)来调用返回某种类型的Object
的方法。
从版本5.2.2
开始,所有入站网关都可以配置errorOnTimeout
布尔标志,以便在下游流在回复超时期间不返回回复时抛出MessageTimeoutException
。在线程将控制权返回到网关之前,计时器不会启动,因此通常只有在下游流是异步的或者由于某些处理程序返回null
而停止时,计时器才有用,例如filter。这样的异常可以在errorChannel
流上进行处理,例如,为请求客户端生成补偿应答。