Following the same scheme of inbound and outbound adapters, the
framework’s JDBC adapters don’t do anything different. The inbound adapter
extracts the data from
Database and passes the
resultset as a
Message onto the local channels. The
outbound adapter persists the data records into
Database by reading off the channel. The
jdbc name-support provides the relevant elements
for creating the respective adapters.
It would be ideal if you were familiar with JDBC and especially
Spring Framework’s support. JDBC discusses things about
JdbcTemplate, Row Mapping strategies, etc.,
which will be useful for understanding the adapters outlined below.
You can read my other book, Just Spring, for a basic primer on these concepts.
It is the responsibility of inbound adapters to read a data set
and convert them to messages. The
inbound-channel-adapter is used to create an
endpoint of this sort. The adapter is provided with a SQL query and a
channel to post the messages. It is also given an instance of
Datasource, which will provide the relevant database
connection details. You can also provide the
See the basic setup here:
<jdbc:inbound-channel-adapter channel="resultset-channel" data-source="mySqlDatasource" query="SELECT * FROM ACCOUNTS A where A.STATUS='NEW' and POLLED='N'"> <int:poller fixed-rate="1000"/> </jdbc:inbound-channel-adapter>
The above adapter connects to the
identified by the data source. It then uses the
query attribute to execute ...