Message Channels
While Message represents a
container for information data, the channel represents the location where
it is being sent. Simply put, the message ends up at a prespecified
address called channel before being used by someone
else. The sender and receiver will be encoded with the information of the
channels. See Figure 2-2, depicting the Message channels. In Spring Integration,
the channel is represented by a MessageChannel interface.

Figure 2-2. Message Channels
Declaring Channels
Spring Integration provides a declarative model to create channels so we don’t have to instantiate channels using Java classes. Declaring a channel is simple and straightforward, as shown in the following snippet:
<beans
xmlns:int="http://www.springframework.org/schema/integration"
xsi:schemaLocation="http://www.springframework.org/schema/integration
http://www.springframework.org/schema/integration/spring-integration-2.1.xsd"
...
>
// declaratively creating a channel
<int:channel id="newAccounts">
</beans>Note that since the channels, along with other messaging
components, are defined in the integration XML namespace, please make
sure your XML file consists of the above namespaces.
Out of the box, the framework provides a few concrete
implementations, such as QueueChannel, PriorityChannel, and RendezvousChannel. Although there are a few differences among all the channel implementations, the underlying ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access