0
点赞
收藏
分享

微信扫一扫

Spring Batch之读数据—FlatFileItemReader(二十五)

芝婵 2022-02-16 阅读 80

FlatFileItemReader实现ItemReader接口,核心作用将Flat文件中的记录转换为Java对象。

一、FlatFileItemReader中关键属性

属性类型说明
bufferedReaderFactoryBufferedReaderFactory根据给定的resource创建BufferReader实例,默认使用DefaultBufferedReaderFactory创建文本类型的BufferReader实例。
commentsString[]定义注释行的前缀,当某行以这些字符串中的一个开头时候,此行记录将会被Spring Batch框架忽略。
encodingString读取文件的编码类型,默认值为从环境变量file.encoding获取,如果没有设置则默认为UTF-8
lineMapperLineMapper<T>将一行文件记录转换为Java对象
linesToSkipint读取文件的时候,定义跳过文件的行数;跳过的行记录将会被传递给skippedLinesCallback,执行跳过行的回调操作
recordSeparatorPolicyRecordSeparatorPolicy定义文件如何区分记录,可以按照单行、也可以按照多行区分记录
resourceResource需要读取的资源文件
skippedLinesCallbackLineCallbackHandler定义文件中记录跳过时执行的回调操作,通常与linesToSkip一起使用
strictboolean定义读取文件不存在时候的策略,如果为true则抛出异常;如果为false表示不抛出异常,默认值为true

二、FlatFileItemReader中关键属性使用到的关键接口和类

关键类说明
Resource定义读取的文件资源
RecordSeparatorPolicy从文件中确定一条记录的策略,记录可能是一行,可能是跨多行
LineMapper将一条记录转化为Java数据对象,通常由LineTokenizer和FieldSetMapper组合来实现该功能
LineTokenizer将一条记录分割为多个字段,在LineMapper的默认实现DefaultLineMapper中使用
FieldSetMapper将多个字段值转化为Java对象,在LIneMapper的默认实现DefaultLineMapper中使用
LineCallbackHandler处理文件中记录回调处理操作

待续

举报

相关推荐

0 条评论