クラス FlatFileItemReader<T>
java.lang.ObjectSE
org.springframework.batch.item.ItemStreamSupport
org.springframework.batch.item.support.AbstractItemStreamItemReader<T>
org.springframework.batch.item.support.AbstractItemCountingItemStreamItemReader<T>
org.springframework.batch.item.file.FlatFileItemReader<T>
- 実装されているすべてのインターフェース:
ResourceAwareItemReaderItemStream<T>、ItemReader<T>、ItemStream、ItemStreamReader<T>、org.springframework.beans.factory.InitializingBean
public class FlatFileItemReader<T>
extends AbstractItemCountingItemStreamItemReader<T>
implements ResourceAwareItemReaderItemStream<T>, org.springframework.beans.factory.InitializingBean
入力
setResource(Resource) から行を読み取る再始動可能な ItemReader。行は setRecordSeparatorPolicy(RecordSeparatorPolicy) によって定義され、setLineMapper(LineMapper) を使用してアイテムにマップされます。行マッピング中に例外がスローされると、FlatFileParseException として再スローされ、問題のある行とその行番号に関する情報が追加されます。このリーダーはスレッドセーフではありません。
- 作成者:
- Robert Kasanicky, Mahmoud Ben Hassine
フィールドのサマリー
フィールドコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidprotected voiddoClose()AbstractItemCountingItemStreamItemReader.doOpen()で開いたリソースを閉じます。protected voiddoOpen()入力の読み取りを開始するために必要なリソースを開きます。protected TdoRead()入力から次の項目を読み取ります。protected booleanprotected voidjumpToItem(int itemIndex) 指定されたアイテムインデックスに移動します。voidsetBufferedReaderFactory(BufferedReaderFactory bufferedReaderFactory) ファイルから行を抽出するために使用されるBufferedReaderSE のファクトリ。voidsetComments(StringSE[] comments) コメントプレフィックスの Setter。voidsetEncoding(StringSE encoding) この入力ソースのエンコーディングの Setter。voidsetLineMapper(LineMapper<T> lineMapper) ラインマッパーの Setter。voidsetLinesToSkip(int linesToSkip) ファイルの先頭でスキップする行数のパブリック setter。voidsetRecordSeparatorPolicy(RecordSeparatorPolicy recordSeparatorPolicy) recordSeparatorPolicy 用のパブリック setter。voidsetResource(org.springframework.core.io.Resource resource) 入力リソースのパブリック setter。voidsetSkippedLinesCallback(LineCallbackHandler skippedLinesCallback) voidsetStrict(boolean strict) 厳格モードでは、入力リソースが存在しない場合、リーダーはAbstractItemCountingItemStreamItemReader.open(org.springframework.batch.item.ExecutionContext)で例外をスローします。クラス org.springframework.batch.item.support.AbstractItemCountingItemStreamItemReader から継承されたメソッド
close, getCurrentItemCount, isSaveState, open, read, setCurrentItemCount, setMaxItemCount, setSaveState, updateクラス org.springframework.batch.item.ItemStreamSupport から継承されたメソッド
getExecutionContextKey, getName, setExecutionContextName, setNameクラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース org.springframework.batch.item.ItemReader から継承されたメソッド
readインターフェース org.springframework.batch.item.ItemStream から継承されたメソッド
close, open, update
フィールドの詳細
DEFAULT_CHARSET
DEFAULT_COMMENT_PREFIXES
comments
コンストラクターの詳細
FlatFileItemReader
public FlatFileItemReader()
メソッドの詳細
setStrict
public void setStrict(boolean strict) 厳格モードでは、入力リソースが存在しない場合、リーダーはAbstractItemCountingItemStreamItemReader.open(org.springframework.batch.item.ExecutionContext)で例外をスローします。- パラメーター:
strict- デフォルトでtrue
setSkippedLinesCallback
- パラメーター:
skippedLinesCallback- アイテムが読み込まれる前に、最初のスキップされた行ごとに呼び出されます。
setLinesToSkip
public void setLinesToSkip(int linesToSkip) ファイルの先頭でスキップする行数のパブリック setter。ファイルに有用な(列名)情報のないヘッダーが含まれていて、行の先頭にコメント区切り文字がない場合に使用できます。- パラメーター:
linesToSkip- スキップする行数
setLineMapper
ラインマッパーの Setter。このプロパティを設定する必要があります。- パラメーター:
lineMapper- 行をアイテムにマップします
setEncoding
この入力ソースのエンコーディングの Setter。デフォルト値はDEFAULT_CHARSETです。- パラメーター:
encoding- この入力ファイルのエンコーディングを含む可能性のあるプロパティオブジェクト。
setBufferedReaderFactory
ファイルから行を抽出するために使用されるBufferedReaderSE のファクトリ。プレーンテキストファイルの場合はデフォルトで問題ありませんが、これは、java.io の標準 BufferedReader が制限されているバイナリファイルの場合に便利な戦略です。- パラメーター:
bufferedReaderFactory- 設定する bufferedReaderFactory
setComments
Setter(コメント接頭辞)。ヘッダー行を無視するためにも使用できます。プレフィックスとしての列名の最初の 2 つ。デフォルトはDEFAULT_COMMENT_PREFIXESです。- パラメーター:
comments- コメント行プレフィックスの配列。
setResource
public void setResource(org.springframework.core.io.Resource resource) 入力リソースのパブリック setter。- 次で指定:
- インターフェース
ResourceAwareItemReaderItemStream<T>のsetResource
setRecordSeparatorPolicy
recordSeparatorPolicy 用のパブリック setter。行末がどこにあるかを判断し、引用符で囲まれた文字列内にある場合に行末を超えて継続するなどの操作を行うために使用されます。- パラメーター:
recordSeparatorPolicy- 設定する recordSeparatorPolicy
doRead
クラスからコピーされた説明:AbstractItemCountingItemStreamItemReader入力から次の項目を読み取ります。- 次で指定:
- クラス
AbstractItemCountingItemStreamItemReader<T>のdoRead - 戻り値:
setRecordSeparatorPolicy(RecordSeparatorPolicy)に基づく論理レコードに対応する文字列(ファイル内の複数行にまたがる場合があります)。- 例外:
ExceptionSE- サブクラスがフレームワークによる解釈のためにチェック済み例外をスローできるようにします
isComment
doClose
クラスからコピーされた説明:AbstractItemCountingItemStreamItemReaderAbstractItemCountingItemStreamItemReader.doOpen()で開いたリソースを閉じます。- 次で指定:
- クラス
AbstractItemCountingItemStreamItemReader<T>のdoClose - 例外:
ExceptionSE- サブクラスがフレームワークによる解釈のためにチェック済み例外をスローできるようにします
doOpen
クラスからコピーされた説明:AbstractItemCountingItemStreamItemReader入力の読み取りを開始するために必要なリソースを開きます。- 次で指定:
- クラス
AbstractItemCountingItemStreamItemReader<T>のdoOpen - 例外:
ExceptionSE- サブクラスがフレームワークによる解釈のためにチェック済み例外をスローできるようにします
afterPropertiesSet
- 次で指定:
- インターフェース
org.springframework.beans.factory.InitializingBeanのafterPropertiesSet - 例外:
ExceptionSE
jumpToItem
クラスからコピーされた説明:AbstractItemCountingItemStreamItemReader指定されたアイテムインデックスに移動します。AbstractItemCountingItemStreamItemReader.doRead()を使用して入力を再読み取りするよりも効率的に特定のインデックスに移動する方法がある場合、サブクラスはこのメソッドをオーバーライドする必要があります。- オーバーライド:
- クラス
AbstractItemCountingItemStreamItemReader<T>のjumpToItem - パラメーター:
itemIndex- ジャンプするアイテムのインデックス(0 ベース)。- 例外:
ExceptionSE- サブクラスがフレームワークによる解釈のためにチェック済み例外をスローできるようにします