尝试使用jackson-data-format-csv解析csv文件,转换成Java对象,最终作为response body 以Json格式返回给用户,遇到几点问题:
第一:解析后字段顺序不对:
要解析csv文件,首先要定义以什么格式解析,即schema。
jackson csv library document 讲的很清楚,在这里定义schema有三种方式:
- 基于一个Java类创建schema
// Schema from POJO (usually has @JsonPropertyOrder annotation) CsvSchema schema = mapper.schemaFor(Pojo.class);
- 在需要schema的时候通过手动添加每个列的方式build构建schema
// Manually-built schema: one with type, others default to "STRING" CsvSchema schema = CsvSchema.builder() .addColumn("firstName") .addColumn("lastName") .addColumn("age", CsvSchema.ColumnType.NUMBER) .build();
<