第9章 Spring集成

本章内容:
  • 实时处理数据
  • 定义集成流
  • 使用Spring Integration的Java DSL定义
  • 与Email、文件系统和其他外部系统进行集成

在旅行时,最让我感到沮丧的一件事就是长途飞行时的互联网连接非常差,或者根本就没有。我喜欢利用空中时间完成一些工作,这本书的很多内容就是这样写出来的。但是,如果没有网络连接,恰好我又想获取某个库或者查看一个JavaDoc文档,那么我就无能为力了。因此,我现在会随身带一本书,以便于在这种场合下阅读。

就像我们需要连接互联网才能提高生产效率一样,很多应用都需要连接外部系统才能完成它们的功能。应用程序可能需要读取或发送Email、与外部API交互或者对写入数据库的数据做出反应。而且,由于数据是在外部系统读取或写入的,应用可能需要以某种方式处理这些数据,这样才能转换为应用程序自己的领域类。

在本章中,我们将会看到如何使用Spring Integration实现通用的集成模式。Spring Integration是众多集成模式的现成实现,这些模式在Gregor Hohpe和Bobby Woolf编写的《企业集成模式》(Enterprise Integration Patterns,Addison-Wesley,2003)中进行了归类。每个模式都实现为一个组件,消息会通过该组件在管道中传递数据。借助Spring配置,我们可以将这些组件组装成一个管道,数据可以通过这个管道来流动。我们从定义一个简单的集成流开始,这个流包含了Spring Integration的众多特性和特点。