--Stellen Sie alle Zeichenfolgentypen auf Anführungszeichen ein
SampleController.java
@RestController
public class SampleController {
@GetMapping(value="/sample.csv", produces="text/csv;charset=utf-8;Content-Disposition:attachment")
public String csv() throws JsonProcessingException {
List<UserBean> rows = new ArrayList<UserBean>() {
{
add(new UserBean("ozaki", "runners", 27));
}
};
CsvMapper mapper = new CsvMapper();
//Wenn Sie mit Header hinzufügen, wird der ersten Zeile ein Header hinzugefügt.
CsvSchema schema = mapper.schemaFor(UserBean.class).withHeader();
// ALWAYS_QUOTE_Wenn STRINGS verwendet wird, haben Spalten vom Typ String Anführungszeichen.
mapper.configure(CsvGenerator.Feature.ALWAYS_QUOTE_STRINGS, true);
return mapper.writer(schema).writeValueAsString(rows);
}
}
UserBean.java
//Legen Sie die Reihenfolge der CSV-Spalten fest
@JsonPropertyOrder({"name", "team", "age"})
public class UserBean {
private String name;
//Keine Zitate mit JsonRawValue
@JsonRawValue
private String team;
private Integer age;
public UserBean(String name, String team, Integer age) {
this.name = name;
this.team = team;
this.age = age;
}
/* setter/getter */
sample.csv
"name","team","age"
"ozaki",runners,27
Recommended Posts