# Uses of Interface
org.springframework.batch.item.ItemWriter

Packages that use ItemWriter
Package
Description
org.springframework.batch.core.configuration.xml
Parsers for XML based configuration
org.springframework.batch.core.step.builder
Step level builders for java based job configuration.
org.springframework.batch.core.step.factory
Factories for step level components.
org.springframework.batch.core.step.item
Specific implementations of step concerns for item-oriented approach.
org.springframework.batch.integration.async
Components for executing item processing asynchronously and writing the results when processing is complete.
org.springframework.batch.integration.chunk
Components for remote chunking.
org.springframework.batch.item
Infrastructure interfaces and primary dependencies for item concerns.
org.springframework.batch.item.adapter
Adapters for Plain Old Java Objects.
org.springframework.batch.item.amqp
AMQP related batch components.
org.springframework.batch.item.avro
org.springframework.batch.item.data
Spring Data related readers and writers.
org.springframework.batch.item.database
Infrastructure implementations of database based item readers and writers.
org.springframework.batch.item.file
Infrastructure implementations of io file concerns.
org.springframework.batch.item.jms
JMS based reader/writer and related components.
org.springframework.batch.item.json
Infrastructure implementations of JSON input and output.
org.springframework.batch.item.kafka
Apache Kafka related readers and writers
org.springframework.batch.item.mail
Java Mail based components.
org.springframework.batch.item.mail.javamail
JavaMail related components.
org.springframework.batch.item.support
Internal support package
org.springframework.batch.item.support.builder
Builders for support classes.
org.springframework.batch.item.xml
Infrastructure implementations of xml input and output.

- ## Uses of ItemWriter in org.springframework.batch.core.configuration.xml

  Methods in org.springframework.batch.core.configuration.xml with parameters of type ItemWriter
  Modifier and Type
  Method
  Description
  `void`
  StepParserStepFactoryBean.`setItemWriter(ItemWriter<? super O> itemWriter)`

- ## Uses of ItemWriter in org.springframework.batch.core.step.builder

  Methods in org.springframework.batch.core.step.builder that return ItemWriter
  Modifier and Type
  Method
  Description
  `protected ItemWriter<? super O>`
  SimpleStepBuilder.`getWriter()`
  Methods in org.springframework.batch.core.step.builder with parameters of type ItemWriter
  Modifier and Type
  Method
  Description
  `protected void`
  SimpleStepBuilder.`registerAsStreamsAndListeners(ItemReader<? extends I> itemReader, ItemProcessor<? super I,? extends O> itemProcessor, ItemWriter<? super O> itemWriter)`
  `SimpleStepBuilder<I,O>`
  SimpleStepBuilder.`writer(ItemWriter<? super O> writer)`
  An item writer that writes a chunk of items.

- ## Uses of ItemWriter in org.springframework.batch.core.step.factory

  Methods in org.springframework.batch.core.step.factory that return ItemWriter
  Modifier and Type
  Method
  Description
  `protected ItemWriter<? super S>`
  SimpleStepFactoryBean.`getItemWriter()`
  Protected getter for the `ItemWriter` for subclasses to use
  Methods in org.springframework.batch.core.step.factory with parameters of type ItemWriter
  Modifier and Type
  Method
  Description
  `void`
  SimpleStepFactoryBean.`setItemWriter(ItemWriter<? super S> itemWriter)`

- ## Uses of ItemWriter in org.springframework.batch.core.step.item

  Methods in org.springframework.batch.core.step.item with parameters of type ItemWriter
  Modifier and Type
  Method
  Description
  `void`
  SimpleChunkProcessor.`setItemWriter(ItemWriter<? super O> itemWriter)`
  Constructors in org.springframework.batch.core.step.item with parameters of type ItemWriter
  Modifier
  Constructor
  Description
  ``
  `FaultTolerantChunkProcessor(ItemProcessor<? super I,? extends O> itemProcessor, ItemWriter<? super O> itemWriter, BatchRetryTemplate batchRetryTemplate)`
  ``
  `SimpleChunkProcessor(ItemProcessor<? super I,? extends O> itemProcessor, ItemWriter<? super O> itemWriter)`
  ``
  `SimpleChunkProcessor(ItemWriter<? super O> itemWriter)`

- ## Uses of ItemWriter in org.springframework.batch.integration.async

  Classes in org.springframework.batch.integration.async that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `AsyncItemWriter<T>`
  Methods in org.springframework.batch.integration.async with parameters of type ItemWriter
  Modifier and Type
  Method
  Description
  `void`
  AsyncItemWriter.`setDelegate(ItemWriter<T> delegate)`

- ## Uses of ItemWriter in org.springframework.batch.integration.chunk

  Classes in org.springframework.batch.integration.chunk that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `ChunkMessageChannelItemWriter<T>`
  Methods in org.springframework.batch.integration.chunk with parameters of type ItemWriter
  Modifier and Type
  Method
  Description
  `RemoteChunkingWorkerBuilder<I,O>`
  RemoteChunkingWorkerBuilder.`itemWriter(ItemWriter<O> itemWriter)`
  Set the `ItemWriter` to use to write items sent by the manager step.
  `void`
  RemoteChunkHandlerFactoryBean.`setChunkWriter(ItemWriter<T> chunkWriter)`
  The item writer to be injected into the step.
  `RemoteChunkingManagerStepBuilder<I,O>`
  RemoteChunkingManagerStepBuilder.`writer(ItemWriter<? super O> writer)`
  This method will throw a `UnsupportedOperationException` since the item writer of the manager step in a remote chunking setup will be automatically set to an instance of `ChunkMessageChannelItemWriter`.

- ## Uses of ItemWriter in org.springframework.batch.item

  Subinterfaces of ItemWriter in org.springframework.batch.item
  Modifier and Type
  Interface
  Description
  `interface`
  `ItemStreamWriter<T>`
  Convenience interface that combines `ItemStream` and `ItemWriter` .
  Classes in org.springframework.batch.item that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `KeyValueItemWriter<K,V>`
  A base class to implement any `ItemWriter` that writes to a key value store using a `Converter` to derive a key from an item

- ## Uses of ItemWriter in org.springframework.batch.item.adapter

  Classes in org.springframework.batch.item.adapter that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `ItemWriterAdapter<T>`
  Delegates item processing to a custom method - passes the item as an argument for the delegate method.
  `class`
  `PropertyExtractingDelegatingItemWriter<T>`
  Delegates processing to a custom method - extracts property values from item object and uses them as arguments for the delegate method.

- ## Uses of ItemWriter in org.springframework.batch.item.amqp

  Classes in org.springframework.batch.item.amqp that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `AmqpItemWriter<T>`
  AMQP `ItemWriter` implementation using an `AmqpTemplate` to send messages.

- ## Uses of ItemWriter in org.springframework.batch.item.avro

  Classes in org.springframework.batch.item.avro that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `AvroItemWriter<T>`
  An `ItemWriter` that serializes data to an `WritableResource` using Avro.

- ## Uses of ItemWriter in org.springframework.batch.item.data

  Classes in org.springframework.batch.item.data that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `GemfireItemWriter<K,V>`
  An `ItemWriter` that stores items in GemFire
  `class`
  `MongoItemWriter<T>`
  A `ItemWriter` implementation that writes to a MongoDB store using an implementation of Spring Data's `MongoOperations`.
  `class`
  `Neo4jItemWriter<T>`
  Deprecated.
  since 5.0 in favor of the item writer from https://github.com/spring-projects/spring-batch-extensions/blob/main/spring-batch-neo4j
  `class`
  `RepositoryItemWriter<T>`
  A `ItemWriter` wrapper for a `CrudRepository` from Spring Data.
  `class`
  `SpELMappingGemfireItemWriter<K,V>`
  A convenient `GemfireItemWriter` implementation that uses a `SpELItemKeyMapper`

- ## Uses of ItemWriter in org.springframework.batch.item.database

  Classes in org.springframework.batch.item.database that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `HibernateItemWriter<T>`
  `ItemWriter` that uses a Hibernate session to save or update entities that are not part of the current Hibernate session.
  `class`
  `JdbcBatchItemWriter<T>`
  `ItemWriter` that uses the batching features from `NamedParameterJdbcTemplate` to execute a batch of statements for all items provided.
  `class`
  `JpaItemWriter<T>`
  `ItemWriter` that is using a JPA EntityManagerFactory to merge any Entities that aren't part of the persistence context.

- ## Uses of ItemWriter in org.springframework.batch.item.file

  Subinterfaces of ItemWriter in org.springframework.batch.item.file
  Modifier and Type
  Interface
  Description
  `interface`
  `ResourceAwareItemWriterItemStream<T>`
  Interface for `ItemWriter`s that implement `ItemStream` and write output to `Resource`.
  Classes in org.springframework.batch.item.file that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `FlatFileItemWriter<T>`
  This class is an item writer that writes data to a file or stream.
  `class`
  `MultiResourceItemWriter<T>`
  Wraps a `ResourceAwareItemWriterItemStream` and creates a new output resource when the count of items written in current resource exceeds `MultiResourceItemWriter.setItemCountLimitPerResource(int)`.

- ## Uses of ItemWriter in org.springframework.batch.item.jms

  Classes in org.springframework.batch.item.jms that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `JmsItemWriter<T>`
  An `ItemWriter` for JMS using a `JmsTemplate`.

- ## Uses of ItemWriter in org.springframework.batch.item.json

  Classes in org.springframework.batch.item.json that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `JsonFileItemWriter<T>`
  Item writer that writes data in json format to an output file.

- ## Uses of ItemWriter in org.springframework.batch.item.kafka

  Classes in org.springframework.batch.item.kafka that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `KafkaItemWriter<K,T>`
  An `ItemWriter` implementation for Apache Kafka using a `KafkaTemplate` with default topic configured.

- ## Uses of ItemWriter in org.springframework.batch.item.mail

  Classes in org.springframework.batch.item.mail that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `SimpleMailMessageItemWriter`
  A simple `ItemWriter` that can send mail messages.

- ## Uses of ItemWriter in org.springframework.batch.item.mail.javamail

  Classes in org.springframework.batch.item.mail.javamail that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `MimeMessageItemWriter`
  A simple `ItemWriter` that can send mail messages.

- ## Uses of ItemWriter in org.springframework.batch.item.support

  Classes in org.springframework.batch.item.support that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `AbstractFileItemWriter<T>`
  Base class for item writers that write data to a file or stream.
  `class`
  `AbstractItemStreamItemWriter<T>`
  Base class for `ItemWriter` implementations.
  `class`
  `ClassifierCompositeItemWriter<T>`
  Calls one of a collection of ItemWriters for each item, based on a router pattern implemented through the provided `Classifier`.
  `class`
  `CompositeItemWriter<T>`
  Calls a collection of `ItemWriter`s in fixed-order sequence.
  The implementation is thread-safe if all delegates are thread-safe.
  `class`
  `ListItemWriter<T>`
  `class`
  `SynchronizedItemStreamWriter<T>`
  An `ItemStreamWriter` decorator with a synchronized `write()` method.
  Method parameters in org.springframework.batch.item.support with type arguments of type ItemWriter
  Modifier and Type
  Method
  Description
  `void`
  ClassifierCompositeItemWriter.`setClassifier(org.springframework.classify.Classifier<T,ItemWriter<? super T>> classifier)`
  `void`
  CompositeItemWriter.`setDelegates(List<ItemWriter<? super T>> delegates)`
  The list of item writers to use as delegates.

- ## Uses of ItemWriter in org.springframework.batch.item.support.builder

  Methods in org.springframework.batch.item.support.builder with parameters of type ItemWriter
  Modifier and Type
  Method
  Description
  `final CompositeItemWriterBuilder<T>`
  CompositeItemWriterBuilder.`delegates(ItemWriter<? super T>... delegates)`
  The item writers to use as delegates.
  Method parameters in org.springframework.batch.item.support.builder with type arguments of type ItemWriter
  Modifier and Type
  Method
  Description
  `ClassifierCompositeItemWriterBuilder<T>`
  ClassifierCompositeItemWriterBuilder.`classifier(org.springframework.classify.Classifier<T,ItemWriter<? super T>> classifier)`
  Establish the classifier to be used for the selection of which `ItemWriter` to use.
  `CompositeItemWriterBuilder<T>`
  CompositeItemWriterBuilder.`delegates(List<ItemWriter<? super T>> delegates)`
  The list of item writers to use as delegates.

- ## Uses of ItemWriter in org.springframework.batch.item.xml

  Classes in org.springframework.batch.item.xml that implement ItemWriter
  Modifier and Type
  Class
  Description
  `class`
  `StaxEventItemWriter<T>`
  An implementation of `ItemWriter` which uses StAX and `Marshaller` for serializing object to XML.