Table A.1. Available Item Readers
| Item Reader | Description |
|---|---|
| AbstractItemCountingItemStreamItemReader | Abstract base class that provides basic
restart capabilities by counting the number of items returned from
an ItemReader. |
| ListItemReader | Provides the items from a list, one at a time |
| ItemReaderAdapter | Adapts any class to the
ItemReader interface. |
| AggregateItemReader | 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#BEGIN_RECORD and AggregateItemReader#END_RECORD |
| FlatFileItemReader | Reads from a flat file. Includes ItemStream and Skippable functionality. See section on Read from a File |
| StaxEventItemReader | Reads via StAX. See HOWTO - Read from a File |
| JdbcCursorItemReader | Reads from a database cursor via JDBC. See HOWTO - Read from a Database |
| HibernateCursorItemReader | Reads from a cursor based on an HQL query. See section on Reading from a Database |
| IbatisPagingItemReader | 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 |
| JmsItemReader | Given a Spring JmsOperations object and a JMS Destination or destination name to send errors, provides items received through the injected JmsOperations receive() method |
| JpaPagingItemReader | Given a JPQL statement, pages through the rows, such that large datasets can be read without running out of memory |
| JdbcPagingItemReader | Given a SQL statement, pages through the rows, such that large datasets can be read without running out of memory |
Table A.2. Available Item Writers
| Item Writer | Description |
|---|---|
| AbstractItemStreamItemWriter | Abstract base class that combines the
ItemStream and
ItemWriter interfaces. |
| CompositeItemWriter | Passes an item to the process method of each in an injected List of ItemWriter objects |
| ItemWriterAdapter | Adapts any class to the
ItemWriter interface. |
| PropertyExtractingDelegatingItemWriter | 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 |
| FlatFileItemWriter | Writes to a flat file. Includes ItemStream and Skippable functionality. See section on Writing to a File |
| HibernateItemWriter | 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. |
| JdbcBatchItemWriter | Uses batching features from a
PreparedStatement, if available, and can
take rudimentary steps to locate a failure during a
flush. |
| JpaItemWriter | This item writer is JPA EntityManager aware
and handles some transaction-related work that a non-"jpa aware"
ItemWriter would not need to know about and
then delegates to another writer to do the actual writing. |
| StaxEventItemWriter | Uses an ObjectToXmlSerializer implementation to convert each item to XML and then writes it to an XML file using StAX. |