扩展 Spring 编程模型以支持众所周知的企业集成模式。 Spring Integration 可以在基于 Spring 的应用程序中实现轻量级消息传递,并支持通过声明性适配器与外部系统集成。这些适配器提供了比 Spring 对远程处理、消息传递和调度的支持更高级别的抽象。 Spring Integration 的主要目标是提供一个简单的模型来构建企业集成解决方案,同时保持关注点分离,这对于生成可维护、可测试的代码至关重要。
使用 Spring 框架鼓励开发人员使用接口进行编码,并使用依赖项注入 (DI) 为普通旧 Java 对象 (POJO) 提供执行其任务所需的依赖项。 Spring Integration 将这一概念更进一步,其中 POJO 使用消息传递范例连接在一起,并且各个组件可能不知道应用程序中的其他组件。这样的应用程序是通过组装细粒度的可重用组件来构建的,以形成更高级别的功能。通过精心设计,这些流程可以模块化,并可以在更高的级别上重用。
除了将细粒度组件连接在一起之外,Spring Integration 还提供了多种通道适配器和网关来与外部系统进行通信。通道适配器用于单向集成(发送或接收);网关用于请求/回复场景(入站或出站)。
首先,您的 POM/Gradle 中需要依赖项:
< dependency >
< groupId >org.springframework.integration</ groupId >
< artifactId >spring-integration-core</ artifactId >
</ dependency >
如果您处理目标协议通道适配器,它也会被传递地拉取。例如,对于 Apache Kafka 支持,您只需要这样:
< dependency >
< groupId >org.springframework.integration</ groupId >
< artifactId >spring-integration-kafka</ artifactId >
</ dependency >
对于注释或 Java DSL 配置,您需要在应用程序上下文中启用Spring Integration:
@ EnableIntegration
@ Configuration
public class ExampleConfiguration {
}
请参阅我们的行为准则。
请参阅我们的安全政策。
Spring Integration 维护参考文档(已发布和源代码)、GitHub wiki 页面和 API 参考。还有跨 Spring 项目的指南和教程。
要检查项目并从源代码构建,请执行以下操作:
git clone git://github.com/spring-projects/spring-integration.git
cd spring-integration
./gradlew clean test
or
./gradlew clean testAll
后者运行额外的测试(那些用@LongRunningIntegrationTest
注释的测试);这是一个更彻底的测试,但运行时间要长得多。
测试结果在每个模块下的build/reports/tests/test
(或.../testAll
)中捕获(以 HTML 格式)。
在命令中添加--continue
来执行完整的构建,即使某些模块中存在失败的测试;否则,构建将在当前正在构建的模块完成后停止。
注意:虽然 Spring Integration 使用 Java SE 17 或更高版本运行,但需要 Java 17 编译器来构建项目。
要构建 jar 并将其安装到本地 Maven 缓存中:
./gradlew build publishToMavenLocal
构建 api Javadoc(结果将位于build/api
中):
./gradlew api
构建参考文档(结果将位于build/site
中):
./gradlew antora
要构建完整的发行版,包括-dist
、 -docs
和-schema
zip 文件(结果将在build/distributions
中):
./gradlew dist
如果您安装了 BuildShip 插件,
文件 -> 导入 -> Gradle -> 现有 Gradle 项目
要生成 Eclipse 元数据(.classpath 和 .project 文件等),请执行以下操作:
./gradlew eclipse
完成后,您可以像往常一样将项目导入到 Eclipse 中:
文件 -> 导入 -> 常规 -> 将现有项目放入工作区
浏览到“spring-integration”根目录。所有项目的导入都应该没有错误。
要将项目导入 IntelliJ IDEA:
文件 -> 打开... -> 并从 spring-integration 项目根目录中选择 build.gradle
另请参阅贡献者指南。
欲了解更多信息,请访问 Spring Integration 网站:https://spring.io/projects/spring-integration