对于最新的稳定版本,请使用 Spring Integration 6.4.0spring-doc.cadn.net.cn

2.1 和 2.2 之间的更改

请参阅迁移指南,了解可能影响应用程序的重要更改。 您可以在 wiki 上找到 2.1 之前所有版本的迁移指南。spring-doc.cadn.net.cn

新组件

版本 2.2 添加了许多新组件。spring-doc.cadn.net.cn

RedisStore入站和出站通道适配器

Spring 集成现在具有RedisStore入站和出站通道适配器,允许您写入和读取Message与 Redis 集合之间的有效负载。 有关更多信息,请参阅 RedisStore 出站通道适配器和 Redis Store 入站通道适配器spring-doc.cadn.net.cn

MongoDB 入站和出站通道适配器

Spring 集成现在具有 MongoDB 入站和出站通道适配器,允许您写入和读取Messagepayloads 来往和从 MongoDB 文档存储。 有关更多信息,请参阅 MongoDB 出站通道适配器MongoDB 入站通道适配器spring-doc.cadn.net.cn

JPA 终端节点

Spring 集成现在包括 Java 持久性 API (JPA) 的组件,用于检索和持久化 JPA 实体对象。 JPA 适配器包括以下组件:spring-doc.cadn.net.cn

有关更多信息,请参阅 JPA 支持spring-doc.cadn.net.cn

一般更改

本节介绍从版本 2.1 到版本 2.2 的一般更改。spring-doc.cadn.net.cn

默认使用的 Spring 3.1

Spring 集成现在使用 Spring 3.1。spring-doc.cadn.net.cn

向终端节点添加行为

添加<advice-chain/>to a poller 已经有一段时间了。 但是,由此添加的行为会影响整个集成流程。 它没有解决向单个终端节点添加(例如)重试的功能。 2.2 版本引入了<request-handler-advice-chain/>到许多端点。spring-doc.cadn.net.cn

此外,为此,我们添加了三个标准建议类:spring-doc.cadn.net.cn

有关更多信息,请参阅向终端节点添加行为spring-doc.cadn.net.cn

事务同步和伪事务

Poller 现在可以参与 Spring 的 Transaction Synchronization 功能。 这允许同步诸如通过入站通道适配器重命名文件之类的作,具体取决于事务是提交还是回滚。spring-doc.cadn.net.cn

此外,您可以在不存在 “真实” 交易时启用这些功能,方法是PseudoTransactionManager.spring-doc.cadn.net.cn

有关更多信息,请参阅事务同步spring-doc.cadn.net.cn

文件适配器:改进的文件覆盖和附加处理

使用文件出站通道适配器或文件出站网关时,您可以使用新的mode财产。 在 Spring Integration 2.2 之前,目标文件在存在时被替换。 现在,您可以指定以下选项:spring-doc.cadn.net.cn

有关更多信息,请参阅处理现有目标文件spring-doc.cadn.net.cn

已将 reply-timeout 添加到更多出站网关

XML Namespace 支持将 reply-timeout 属性添加到以下出站网关:spring-doc.cadn.net.cn

弹簧-AMQP 1.1

Spring 集成现在使用 Spring AMQP 1.1。 这使得可以在 Spring 集成应用程序中使用多个功能,包括以下内容:spring-doc.cadn.net.cn

JDBC 支持 - 存储过程组件

SPEL 支持

使用 Spring 集成 JDBC 适配器的存储过程组件时,您现在可以使用 Spring 表达式语言 (SpEL) 提供存储过程名称或存储函数名称。spring-doc.cadn.net.cn

这样做可以指定要在运行时调用的存储过程。 例如,您可以提供要通过消息标头执行的存储过程名称。 有关详细信息,请参阅存储过程spring-doc.cadn.net.cn

JMX 支持

存储过程组件现在提供基本的 JMX 支持,将其一些属性公开为 MBean:spring-doc.cadn.net.cn

JDBC 支持:出站网关

当您使用 JDBC 出站网关时,更新查询不再是必需的。 现在,您可以通过使用请求消息作为参数源来仅提供 select 查询。spring-doc.cadn.net.cn

JDBC 支持:特定于通道的消息存储实现

我们添加了一个新的特定于消息通道的消息存储实现,使用特定于数据库的 SQL 查询提供更具可扩展性的解决方案。 有关更多信息,请参阅支持消息通道spring-doc.cadn.net.cn

有序关机

我们添加了一个名为stopActiveComponents()IntegrationMBeanExporter. 它允许以有序的方式关闭 Spring 集成应用程序,不允许新的入站消息发送到某些适配器,并等待一段时间以允许正在进行的消息完成。spring-doc.cadn.net.cn

JMS 出站网关改进

现在,您可以将 JMS 出站网关配置为使用MessageListener容器来接收回复。 这样做可以提高网关的性能。spring-doc.cadn.net.cn

ObjectToJsonTransformer

默认情况下,ObjectToJsonTransformer现在将content-typeheader 设置为application/json. 有关更多信息,请参阅 Transformerspring-doc.cadn.net.cn

HTTP 支持

默认情况下,不再启用基于 HTTP 的 Java 序列化。 以前,在设置expected-response-typeSerializableobject、Accept标头未正确设置。 我们更新了SerializingHttpMessageConverter要设置Acceptheader 设置为application/x-java-serialized-object. 但是,由于这可能会导致与现有应用程序不兼容,因此我们决定不再自动将此转换器添加到 HTTP 端点。spring-doc.cadn.net.cn

如果你想使用 Java 序列化,你需要添加SerializingHttpMessageConverter到相应的终端节点,方法是使用message-converters属性(当您使用 XML 配置时)或使用setMessageConverters()方法(在 Java 中)。spring-doc.cadn.net.cn

或者,您可能希望考虑改用 JSON。 它是通过使用Jackson在 Classpath 上。spring-doc.cadn.net.cn


APP信息