在 OpenCSV 5.0 中,我们可以通过@CsvRecurse注解映射嵌套 bean,而无需使用 MappingStrategy。
通过注解@CsvRecurse 添加了从输入/输出列到多个嵌入 bean 的成员变量的映射的能力。仍然需要一颗根豆。
CSV文件
id,cardNumber,holder
1,1234567 890,abc
Run Code Online (Sandbox Code Playgroud)
根豆
public class DataSet {
@CsvBindByName
private String id;
@CsvRecurse
private MyNumber myNumber;
//getter and setter
}
Run Code Online (Sandbox Code Playgroud)
嵌套豆
public class MyNumber {
@CsvBindByName
private String cardNumber;
@CsvBindByName
private String holder;
// getter and setter
}
Run Code Online (Sandbox Code Playgroud)
读豆
public static void main(String[] args) throws IOException {
BufferedReader reader = Files.newBufferedReader(Paths.get("path-to-csv-file.csv"));
List<DataSet> beans = new CsvToBeanBuilder<DataSet>(reader).withType(DataSet.class).build().parse();
}
Run Code Online (Sandbox Code Playgroud)
参考:http : //opencsv.sourceforge.net/#multivaluedmap_based_bean_fields_many_to_one_mappings
| 归档时间: |
|
| 查看次数: |
2253 次 |
| 最近记录: |