Skip to content

10.2.9 Endpoint modules

It’s great that Spring Integration lets you create your own channel adapters. But what’s even better is that Spring Integration provides more than two dozen endpoint modules containing channel adapters—both inbound and outbound—for integration with a variety of common external systems, including those listed in table 10.1.

Table 10.1 Spring Integration provides more than two dozen endpoint modules for integration with external systems.

ModuleDependency artifact ID (Group ID: org.springframework.integration)
AMQPspring-integration-amqp
Spring application eventsspring-integration-event
RSS and Atomspring-integration-feed
Filesystemspring-integration-file
FTP/FTPSspring-integration-ftp
GemFirespring-integration-gemfire
HTTPspring-integration-http
JDBCspring-integration-jdbc
JPAspring-integration-jpa
JMSspring-integration-jms
Emailspring-integration-mail
MongoDBspring-integration-mongodb
MQTTspring-integration-mqtt
R2DBCspring-integration-r2dbc
Redisspring-integration-redis
RMIspring-integration-rmi
SFTPspring-integration-sftp
STOMPspring-integration-stomp
Streamspring-integration-stream
Syslogspring-integration-syslog
TCP/UDPspring-integration-ip
WebFluxspring-integration-webflux
Web Servicesspring-integration-ws
WebSocketspring-integration-websocket
XMPPspring-integration-xmpp
ZeroMQspring-integration-zeromq
ZooKeeperspring-integration-zookeeper

One thing that’s clear from looking at table 10.1 is that Spring Integration provides an extensive set of components to meet many integration needs. Most applications will never need even a fraction of what Spring Integration offers. But it’s good to know that Spring Integration has you covered if you need any of these components.

What’s more, it would be impossible to cover all the channel adapters afforded by the modules listed in table 10.1 in the space of this chapter. You’ve already seen examples that use the filesystem module to write to the filesystem. And you’re soon going to use the email module to read emails.

Each of the endpoint modules offers channel adapters that can be either declared as beans when using Java configuration or referenced via static methods when using Java DSL configuration. I encourage you to explore any of the other endpoint modules that interest you most. You’ll find that they’re fairly consistent in how they’re used. But for now, let’s turn our attention to the email endpoint module to see how you might use it in the Taco Cloud application.

Released under the MIT License.