public class FlatFileItemReader<T> extends AbstractItemCountingItemStreamItemReader<T> implements ResourceAwareItemReaderItemStream<T>, org.springframework.beans.factory.InitializingBean
setResource(Resource)
から行を読み取る再始動可能な ItemReader
。行は setRecordSeparatorPolicy(RecordSeparatorPolicy)
によって定義され、setLineMapper(LineMapper)
を使用してアイテムにマップされます。行マッピング中に例外がスローされると、FlatFileParseException
として再スローされ、問題のある行とその行番号に関する情報が追加されます。修飾子と型 | フィールドと説明 |
---|---|
protected java.lang.String[] | comments |
static java.lang.String | DEFAULT_CHARSET |
static java.lang.String[] | DEFAULT_COMMENT_PREFIXES |
コンストラクターと説明 |
---|
FlatFileItemReader() |
修飾子と型 | メソッドと説明 |
---|---|
void | afterPropertiesSet() |
protected void | doClose() AbstractItemCountingItemStreamItemReader.doOpen() で開いたリソースを閉じます。 |
protected void | doOpen() 入力の読み取りを開始するために必要なリソースを開きます。 |
protected T | doRead() 入力から次の項目を読み取ります。 |
protected boolean | isComment(java.lang.String line) |
protected void | jumpToItem(int itemIndex) 指定されたアイテムインデックスに移動します。 |
void | setBufferedReaderFactory(BufferedReaderFactory bufferedReaderFactory) ファイルから行を抽出するために使用される BufferedReader のファクトリ。 |
void | setComments(java.lang.String[] comments) コメントプレフィックスの Setter。 |
void | setEncoding(java.lang.String encoding) この入力ソースのエンコーディングの Setter。 |
void | setLineMapper(LineMapper<T> lineMapper) ラインマッパーの Setter。 |
void | setLinesToSkip(int linesToSkip) ファイルの先頭でスキップする行数のパブリック setter。 |
void | setRecordSeparatorPolicy(RecordSeparatorPolicy recordSeparatorPolicy) recordSeparatorPolicy のパブリック setter。 |
void | setResource(org.springframework.core.io.Resource resource) 入力リソースのパブリック setter。 |
void | setSkippedLinesCallback(LineCallbackHandler skippedLinesCallback) |
void | setStrict(boolean strict) 厳格モードでは、入力リソースが存在しない場合、リーダーは AbstractItemCountingItemStreamItemReader.open(org.springframework.batch.item.ExecutionContext) で例外をスローします。 |
close, getCurrentItemCount, isSaveState, open, read, setCurrentItemCount, setMaxItemCount, setSaveState, update
getExecutionContextKey, setExecutionContextName, setName
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
close, open, update
read
public static final java.lang.String DEFAULT_CHARSET
public static final java.lang.String[] DEFAULT_COMMENT_PREFIXES
protected java.lang.String[] comments
public void setStrict(boolean strict)
AbstractItemCountingItemStreamItemReader.open(org.springframework.batch.item.ExecutionContext)
で例外をスローします。strict
- デフォルトで true
public void setSkippedLinesCallback(LineCallbackHandler skippedLinesCallback)
skippedLinesCallback
- アイテムが読み込まれる前に、最初のスキップされた行ごとに呼び出されます。public void setLinesToSkip(int linesToSkip)
linesToSkip
- スキップする行数 public void setLineMapper(LineMapper<T> lineMapper)
lineMapper
- 行をアイテムにマップします public void setEncoding(java.lang.String encoding)
DEFAULT_CHARSET
です。encoding
- この入力ファイルのエンコーディングを含む可能性のあるプロパティオブジェクト。public void setBufferedReaderFactory(BufferedReaderFactory bufferedReaderFactory)
BufferedReader
のファクトリ。プレーンテキストファイルのデフォルトは問題ありませんが、これは java.io の標準 BufferedReader が制限しているバイナリファイルの場合に便利な戦略です。bufferedReaderFactory
- 設定する bufferedReaderFactorypublic void setComments(java.lang.String[] comments)
DEFAULT_COMMENT_PREFIXES
です。comments
- コメント行プレフィックスの配列。public void setResource(org.springframework.core.io.Resource resource)
ResourceAwareItemReaderItemStream<T>
の setResource
public void setRecordSeparatorPolicy(RecordSeparatorPolicy recordSeparatorPolicy)
recordSeparatorPolicy
- 設定する recordSeparatorPolicy@Nullable protected T doRead() throws java.lang.Exception
AbstractItemCountingItemStreamItemReader
AbstractItemCountingItemStreamItemReader<T>
の doRead
setRecordSeparatorPolicy(RecordSeparatorPolicy)
に基づく論理レコードに対応する文字列(ファイル内の複数行にまたがる場合があります)。java.lang.Exception
- サブクラスがフレームワークによる解釈のためにチェック済み例外をスローできるようにします protected boolean isComment(java.lang.String line)
protected void doClose() throws java.lang.Exception
AbstractItemCountingItemStreamItemReader
AbstractItemCountingItemStreamItemReader.doOpen()
で開いたリソースを閉じます。AbstractItemCountingItemStreamItemReader<T>
の doClose
java.lang.Exception
- サブクラスがフレームワークによる解釈のためにチェック済み例外をスローできるようにします protected void doOpen() throws java.lang.Exception
AbstractItemCountingItemStreamItemReader
AbstractItemCountingItemStreamItemReader<T>
の doOpen
java.lang.Exception
- サブクラスがフレームワークによる解釈のためにチェック済み例外をスローできるようにします public void afterPropertiesSet() throws java.lang.Exception
org.springframework.beans.factory.InitializingBean
の afterPropertiesSet
java.lang.Exception
protected void jumpToItem(int itemIndex) throws java.lang.Exception
AbstractItemCountingItemStreamItemReader
AbstractItemCountingItemStreamItemReader.doRead()
を使用して入力を再読み取りするよりも効率的に特定のインデックスに移動する方法がある場合、サブクラスはこのメソッドをオーバーライドする必要があります。AbstractItemCountingItemStreamItemReader<T>
の jumpToItem
itemIndex
- ジャンプするアイテムのインデックス(0 ベース)。java.lang.Exception
- サブクラスがフレームワークによる解釈のためにチェック済み例外をスローできるようにします