根据您对更多 Spring Integration 示例和更可用结构的大量请求,我们很高兴地宣布以下内容
从当前版本的Spring Integration开始,示例将不再包含在Spring Integration发行版中。相反,我们转向了一个更简单的协作模型,该模型应该会促进更好的社区参与和社区贡献。示例现在有一个专门的Git SCM仓库和一个专门的JIRA问题跟踪系统。示例开发也将有其自己的生命周期,该生命周期不依赖于框架发布的生命周期,尽管出于兼容性原因,仓库仍将使用每个主要版本进行标记。社区的最大好处是,我们现在可以添加更多示例并立即提供给您,而无需等待框架的发布。拥有不与实际框架绑定的JIRA也是一个巨大的好处。您现在有一个专门的地方可以建议示例以及报告现有示例的问题。或者,您也可以通过JIRA以附件形式向我们提交示例,如果我们认为您的示例有价值,我们将非常乐意将其添加到我们的示例仓库中,并适当注明作者。
在哪里获取示例
要监控示例开发并获取有关仓库的更多信息,您可以访问以下URL:
http://git.springsource.org/spring-integration/samples 。我们还使用Git SCM作为示例仓库。有关Git SCM的更多信息,请访问其网站:
https://git-scm.cn/ 克隆示例仓库。 (对于不熟悉Git的人来说,这在某种程度上相当于checkout。)
这是您应该完成的第一步。您的机器上必须安装Git客户端。有许多基于GUI的产品可用于多种平台。简单的Google搜索即可找到它们。要从命令行克隆示例仓库:
> mkdir spring-integration-samples > cd spring-integration-samples > git clone git://git.springsource.org/spring-integration/samples.git
您只需要做这些。现在您已经克隆了整个示例仓库。由于示例仓库是一个实时仓库,您可能希望执行定期更新以获取新示例以及对现有示例的更新。要获取更新,请使用git PULL命令:
> git pull
跟踪示例
如前所述,Spring Integration示例有一个专门的JIRA问题跟踪系统。要提交新的示例请求或提交实际示例(作为附件),请访问我们的JIRA问题跟踪系统:
https://jira.springframework.org/browse/INTSAMPLES示例结构
示例的结构也发生了变化。随着更多示例的计划,我们意识到一些示例具有与众不同的目标。虽然它们都共享展示如何应用和使用
Spring Integration框架的共同目标,但它们在某些领域也有所不同,有些示例旨在侧重于技术用例,而另一些则侧重于业务用例,还有一些示例则完全是为了展示可以应用于解决特定场景(包括技术和业务)的各种技术。对示例进行分类将使我们能够根据每个示例解决的问题更好地组织它们,同时为您提供一种更简单的查找正确示例的方法。
目前有4个类别。在示例仓库中,每个类别都有自己的目录,该目录以类别名称命名。
基本 (BASIC)
(samples/basic) 这是入门的好地方。这里的示例以技术为导向,展示了配置和代码方面的最基本内容,通过向您介绍Spring Integration以及企业集成模式 (EIP) 的基本概念、API和配置,帮助您快速入门。例如;如果您正在寻找关于如何实现和连接服务激活器到通道,或者如何使用消息网关进行消息交换,或者如何开始使用MAIL或TCP/UDP模块等问题的答案,这里将是找到好示例的正确地方。总之,这是入门的好地方。
中级 (INTERMEDIATE)
(samples/intermediate) 此类别面向已经熟悉 Spring Integration 框架(已入门)但需要更多指导来解决更高级的技术问题的开发人员,这些问题是在切换到消息架构后可能遇到的。例如;如果您正在寻找关于如何在各种消息交换场景中处理错误,或者如何为某些消息可能永远不会到达进行聚合的情况正确配置聚合器等问题的答案,以及任何超出特定组件基本实现和配置范围并解决“您还能用它做什么”类型问题的其他问题,这里将是找到这类示例的正确地方。
高级 (ADVANCED)
(samples/advanced) 此类别面向非常熟悉 Spring Integration 框架但希望通过使用 Spring Integration 公共 API 扩展它以解决特定定制需求的开发人员。例如;如果您正在寻找示例,展示如何实现自定义通道或消费者(基于事件或基于轮询),或者您正在尝试找出在实现自定义组件的自定义命名空间时,在 Spring Integration Bean 解析器层次结构之上实现自定义 Bean 解析器的最合适方法,这里将是查找的正确地方。在这里,您还可以找到有助于您进行适配器开发的示例。Spring Integration 提供了广泛的适配器库,允许您将远程系统与 Spring Integration 消息框架连接。但是,您可能需要与核心框架未提供适配器的系统集成。因此,您必须实现自己的适配器。此类别将包含展示如何实现的示例。
应用程序 (APPLICATIONS)
(samples/applications) 此类别面向对消息架构、
EIP 以及对
Spring和
Spring Integration框架有高于平均水平的理解的开发人员和架构师,他们正在寻找解决特定业务问题的示例。换句话说,此类别中示例的重点是业务用例以及如何通过消息架构,特别是Spring Integration来解决它们。例如;如果您有兴趣了解如何通过Spring Integration实现和自动化贷款经纪人或旅行社流程,这里将是找到这类示例的正确地方。
Spring Integration 示例也用主要版本进行标记。因此,要检出特定于 2.0.0.RELEASE 的版本,您只需要在克隆仓库后执行以下 Git 命令:“git checkout v2.0.0.RELEASE”。
请记住!Spring Integration 是一个社区驱动的框架,因此社区参与非常重要。这包括示例,所以如果您找不到您正在寻找的内容,请告诉我们。当然,我们始终欢迎反馈!