【发布时间】:2021-07-23 14:34:15
【问题描述】:
伙计们..!!
需要使用 Spring 批处理读取特定列数据。好吧,我正在创建一个需要读取特定列的 spring 批处理应用程序。
在我的 csv 文件中,我有一列“msisdn”,该字段映射到 POJO。我想读取 Long 数据类型的“msisdn”no 的值。
我正在参考下面的链接。
read only selective columns from csv file using spring batch
客户 POJO
public class Customer {
private String id_type;
private String id_number;
private String customer_name;
private String email_address;
private LocalDate birthday;
private String citizenship;
private String address;
private Long msisdn;
private LocalDateTime kyc_date;
private String kyc_level;
private String goalscore;
private String mobile_network;
}
我正在使用 CustomMapper 类来实现此功能。如您所见,CustomMapper 类实现了 FieldSetMapper 类型。 fieldSet 方法返回 String[] 数组,msisdn 是 Long 类型。无法理解如何获取 msisdn 列中的所有值,因为 fieldSet 只给出 String[] 类型的数据。
CustomMapper
============
public class CustomMapper implements FieldSetMapper<Customer> {
@Override
public Customer mapFieldSet(FieldSet fieldSet) throws BindException {
String[] custArray = null;
Customer customer = new Customer();
customer.setMsisdn(fieldSet.get);
return null;
}
}
请帮我解决这个问题?
【问题讨论】: