这FieldSet
在 Spring Batch 中处理平面文件时,无论是用于输入还是输出,最重要的类之一是FieldSet
. 许多架构和库包含用于帮助您从文件中读入的抽象,但它们通常返回一个String
或数组String
对象。 这真的只让你成功了一半 那里。 一个FieldSet
是 Spring Batch 的抽象,用于启用字段绑定文件资源。它允许开发人员以与他们将处理数据库输入的方式。 一个FieldSet
在概念上类似于 JDBCResultSet
. 一个FieldSet
只需要一个参数:aString
Tokens数组。或者,您还可以配置字段的名称,以便字段可以通过索引或名称访问,如模式所示ResultSet
,如下所示 例:
String[] tokens = new String[]{"foo", "1", "true"};
FieldSet fs = new DefaultFieldSet(tokens);
String name = fs.readString(0);
int value = fs.readInt(1);
boolean booleanValue = fs.readBoolean(2);
上还有更多选项FieldSet
接口,例如Date
长BigDecimal
,依此类推。最大的优点是FieldSet
是它提供了平面文件输入的一致解析。而不是每个批处理作业的解析方式不同潜在的意外方式,它可以是一致的,无论是在处理由format 异常引起的错误时,还是在进行简单的数据转换时。