331 lines
11 KiB
XML
331 lines
11 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE appendix PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
|
<appendix id="listOfReadersAndWriters">
|
|
<title>List of ItemReaders and ItemWriters</title>
|
|
|
|
<section id="itemReadersAppendix">
|
|
<title>Item Readers</title>
|
|
|
|
<table>
|
|
<title>Available Item Readers</title>
|
|
|
|
<tgroup cols="2">
|
|
<colspec align="center" />
|
|
|
|
<thead>
|
|
<row>
|
|
<entry align="center">Item Reader</entry>
|
|
|
|
<entry align="center">Description</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry
|
|
align="left">AbstractItemCountingItemStreamItemReader</entry>
|
|
|
|
<entry align="left">Abstract base class that provides basic
|
|
restart capabilities by counting the number of items returned from
|
|
an <classname>ItemReader</classname>.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">AggregateItemReader</entry>
|
|
|
|
<entry align="left">An ItemReader that delivers a list as its
|
|
item, storing up objects from the injected ItemReader until they
|
|
are ready to be packed out as a collection. This ItemReader should
|
|
mark the beginning and end of records with the constant values in
|
|
FieldSetMapper AggregateItemReader#<emphasis
|
|
role="bold">BEGIN_RECORD</emphasis> and
|
|
AggregateItemReader#<emphasis
|
|
role="bold">END_RECORD</emphasis></entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">AmqpItemReader</entry>
|
|
|
|
<entry align="left">Given a Spring AmqpTemplate it provides
|
|
synchronous receive methods. The receiveAndConvert() method
|
|
lets you receive POJO objects. </entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">FlatFileItemReader</entry>
|
|
|
|
<entry align="left">Reads from a flat file. Includes ItemStream
|
|
and Skippable functionality. See section on Read from a
|
|
File</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">HibernateCursorItemReader</entry>
|
|
|
|
<entry align="left">Reads from a cursor based on an HQL query. See
|
|
section on Reading from a Database</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">HibernatePagingItemReader</entry>
|
|
|
|
<entry align="left">Reads from a paginated HQL query</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">IbatisPagingItemReader</entry>
|
|
|
|
<entry align="left">Reads via iBATIS based on a query. Pages
|
|
through the rows so that large datasets can be read without
|
|
running out of memory. See HOWTO - Read from a Database. This
|
|
ItemReader is now deprecated as of Spring Batch 3.0.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">ItemReaderAdapter</entry>
|
|
|
|
<entry align="left">Adapts any class to the
|
|
<classname>ItemReader</classname> interface.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">JdbcCursorItemReader</entry>
|
|
|
|
<entry align="left">Reads from a database cursor via JDBC. See
|
|
HOWTO - Read from a Database</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">JdbcPagingItemReader</entry>
|
|
|
|
<entry align="left">Given a SQL statement, pages through the rows,
|
|
such that large datasets can be read without running out of
|
|
memory</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">JmsItemReader</entry>
|
|
|
|
<entry align="left">Given a Spring JmsOperations object and a JMS
|
|
Destination or destination name to send errors, provides items
|
|
received through the injected JmsOperations receive()
|
|
method</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">JpaPagingItemReader</entry>
|
|
|
|
<entry align="left">Given a JPQL statement, pages through the
|
|
rows, such that large datasets can be read without running out of
|
|
memory</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">ListItemReader</entry>
|
|
|
|
<entry align="left">Provides the items from a list, one at a
|
|
time</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">MongoItemReader</entry>
|
|
|
|
<entry align="left">Given a MongoOperations object and JSON based MongoDB
|
|
query, provides items received from the MongoOperations find method</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">Neo4jItemReader</entry>
|
|
|
|
<entry align="left">Given a Neo4jOperations object and the components of a
|
|
Cyhper query, items are returned as the result of the Neo4jOperations.query
|
|
method</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">RepositoryItemReader</entry>
|
|
|
|
<entry align="left">Given a Spring Data PagingAndSortingRepository object,
|
|
a Sort and the name of method to execute, returns items provided by the
|
|
Spring Data repository implementation</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">StoredProcedureItemReader</entry>
|
|
|
|
<entry align="left">Reads from a database cursor resulting from the
|
|
execution of a database stored procedure. See HOWTO - Read from a
|
|
Database</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">StaxEventItemReader</entry>
|
|
|
|
<entry align="left">Reads via StAX. See HOWTO - Read from a
|
|
File</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
</section>
|
|
|
|
<section id="itemWritersAppendix">
|
|
<title>Item Writers</title>
|
|
|
|
<table>
|
|
<title>Available Item Writers</title>
|
|
|
|
<tgroup cols="2">
|
|
<colspec align="center" />
|
|
|
|
<thead>
|
|
<row>
|
|
<entry align="center">Item Writer</entry>
|
|
|
|
<entry align="center">Description</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry align="left">AbstractItemStreamItemWriter</entry>
|
|
|
|
<entry align="left">Abstract base class that combines the
|
|
<classname>ItemStream</classname> and
|
|
<classname>ItemWriter</classname> interfaces.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">AmqpItemWriter</entry>
|
|
|
|
<entry align="left">Given a Spring AmqpTemplate it provides
|
|
for synchronous send method. The convertAndSend(Object)
|
|
method lets you send POJO objects. </entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">CompositeItemWriter</entry>
|
|
|
|
<entry align="left">Passes an item to the process method of each
|
|
in an injected <emphasis role="bold">List</emphasis> of <emphasis
|
|
role="bold">ItemWriter</emphasis> objects</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">FlatFileItemWriter</entry>
|
|
|
|
<entry align="left">Writes to a flat file. Includes ItemStream and
|
|
Skippable functionality. See section on Writing to a File</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">GemfireItemWriter</entry>
|
|
|
|
<entry align="left">Using a GemfireOperations object, items wre either written
|
|
or removed from the Gemfire instance based on the configuration of the delete
|
|
flag</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">HibernateItemWriter</entry>
|
|
|
|
<entry align="left">This item writer is hibernate session aware
|
|
and handles some transaction-related work that a non-"hibernate
|
|
aware" item writer would not need to know about and then delegates
|
|
to another item writer to do the actual writing.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">IbatisBatchItemWriter</entry>
|
|
|
|
<entry align="left">Writes items in a batch using the iBatis API's
|
|
directly. This ItemWriter is deprecated as of Spring Batch 3.0.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">ItemWriterAdapter</entry>
|
|
|
|
<entry align="left">Adapts any class to the
|
|
<classname>ItemWriter</classname> interface.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">JdbcBatchItemWriter</entry>
|
|
|
|
<entry align="left">Uses batching features from a
|
|
<classname>PreparedStatement</classname>, if available, and can
|
|
take rudimentary steps to locate a failure during a
|
|
<methodname>flush</methodname>.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">JmsItemWriter</entry>
|
|
|
|
<entry align="left">Using a JmsOperations object, items are written
|
|
to the default queue via the JmsOperations.convertAndSend() method</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">JpaItemWriter</entry>
|
|
|
|
<entry align="left">This item writer is JPA EntityManager aware
|
|
and handles some transaction-related work that a non-"jpa aware"
|
|
<classname>ItemWriter</classname> would not need to know about and
|
|
then delegates to another writer to do the actual writing.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">MimeMessageItemWriter</entry>
|
|
|
|
<entry align="left">Using Spring's JavaMailSender, items of type <classname>MimeMessage</classname>
|
|
are sent as mail messages</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">MongoItemWriter</entry>
|
|
|
|
<entry align="left">Given a MongoOperations object, items are written
|
|
via the MongoOperations.save(Object) method. The actual write is delayed
|
|
until the last possible moment before the transaction commits.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">Neo4jItemWriter</entry>
|
|
|
|
<entry align="left">Given a Neo4jOperations object, items are persisted via the
|
|
save(Object) method or deleted via the delete(Object) per the
|
|
<classname>ItemWriter</classname>'s configuration</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">PropertyExtractingDelegatingItemWriter</entry>
|
|
|
|
<entry align="left">Extends AbstractMethodInvokingDelegator
|
|
creating arguments on the fly. Arguments are created by retrieving
|
|
the values from the fields in the item to be processed (via a
|
|
SpringBeanWrapper) based on an injected array of field
|
|
name</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">RepositoryItemWriter</entry>
|
|
|
|
<entry align="left">Given a Spring Data CrudRepository implementation,
|
|
items are saved via the method specified in the configuration.</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry align="left">StaxEventItemWriter</entry>
|
|
|
|
<entry align="left">Uses an <emphasis
|
|
role="bold">ObjectToXmlSerializer</emphasis> implementation to
|
|
convert each item to XML and then writes it to an XML file using
|
|
StAX.</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
</section>
|
|
</appendix>
|