T - the type of json objects to readpublic class JsonItemReader<T> extends AbstractItemCountingItemStreamItemReader<T> implements ResourceAwareItemReaderItemStream<T>
ItemStreamReader implementation that reads Json objects from a
Resource having the following format:
[
{
// JSON object
},
{
// JSON object
}
]
The implementation is not thread-safe.
| Constructor and Description |
|---|
JsonItemReader(org.springframework.core.io.Resource resource,
JsonObjectReader<T> jsonObjectReader)
Create a new
JsonItemReader instance. |
| Modifier and Type | Method and Description |
|---|---|
protected void |
doClose()
Close the resources opened in
AbstractItemCountingItemStreamItemReader.doOpen(). |
protected void |
doOpen()
Open resources necessary to start reading input.
|
protected T |
doRead()
Read next item from input.
|
void |
setJsonObjectReader(JsonObjectReader<T> jsonObjectReader)
Set the
JsonObjectReader to use to read and map Json fragments to domain objects. |
void |
setResource(org.springframework.core.io.Resource resource) |
void |
setStrict(boolean strict)
In strict mode the reader will throw an exception on
AbstractItemCountingItemStreamItemReader.open(org.springframework.batch.item.ExecutionContext) if the
input resource does not exist. |
close, getCurrentItemCount, isSaveState, jumpToItem, open, read, setCurrentItemCount, setMaxItemCount, setSaveState, updategetExecutionContextKey, setExecutionContextName, setNameclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitclose, open, updatereadpublic JsonItemReader(org.springframework.core.io.Resource resource,
JsonObjectReader<T> jsonObjectReader)
JsonItemReader instance.resource - the input json resourcejsonObjectReader - the json object reader to usepublic void setJsonObjectReader(JsonObjectReader<T> jsonObjectReader)
JsonObjectReader to use to read and map Json fragments to domain objects.jsonObjectReader - the json object reader to usepublic void setStrict(boolean strict)
AbstractItemCountingItemStreamItemReader.open(org.springframework.batch.item.ExecutionContext) if the
input resource does not exist.strict - true by defaultpublic void setResource(org.springframework.core.io.Resource resource)
setResource in interface ResourceAwareItemReaderItemStream<T>@Nullable protected T doRead() throws java.lang.Exception
AbstractItemCountingItemStreamItemReaderdoRead in class AbstractItemCountingItemStreamItemReader<T>null if the data source is exhaustedjava.lang.Exception - Allows subclasses to throw checked exceptions for interpretation by the frameworkprotected void doOpen()
throws java.lang.Exception
AbstractItemCountingItemStreamItemReaderdoOpen in class AbstractItemCountingItemStreamItemReader<T>java.lang.Exception - Allows subclasses to throw checked exceptions for interpretation by the frameworkprotected void doClose()
throws java.lang.Exception
AbstractItemCountingItemStreamItemReaderAbstractItemCountingItemStreamItemReader.doOpen().doClose in class AbstractItemCountingItemStreamItemReader<T>java.lang.Exception - Allows subclasses to throw checked exceptions for interpretation by the framework