<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-csv</artifactId>
<version>2.12.4</version>
</dependency>
public class Student {
private String name;
private int age;
private String gender;
}
CsvMapper csvMapper = new CsvMapper();
csvMapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true);
CsvSchema csvSchema = CsvSchema.builder()
.addColumn("name")
.addColumn("age")
.addColumn("gender")
.build();
MappingIterator<Student> studentIterator = csvMapper.readerWithTypedSchemaFor(Student.class).with(csvSchema).readValues(csvFile);
while (studentIterator.hasNext()) {
Student student = studentIterator.next();
}
CsvMapper csvMapper = new CsvMapper();
CsvSchema csvSchema = CsvSchema.builder()
.addColumn("name")
.addColumn("age")
.addColumn("gender")
.build();
ObjectWriter objectWriter = csvMapper.writer(csvSchema);
objectWriter.writeValue(csvFile, students);
csvMapper.configure(CsvParser.Feature.ALLOW_UTF8, true);