Có ai biết cách com.fasterxml.jackson.databind.ObjectMapper có thể ánh xạ thuộc tính JSON tới thuộc tính POJO không phân biệt chữ hoa chữ thường không?JSON phân biệt chữ hoa chữ thường với bản đồ POJO mà không thay đổi POJO
JSON-String:
[{"FIRSTNAME":"John","LASTNAME":"Doe","DATEOFBIRTH":"1980-07-16T18:25:00.000Z"}]
POJO-Class:
public class Person {
private String firstName;
private String lastName;
private Date dateOfBirth;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public Date getDateOfBirth() {
return dateOfBirth;
}
public void setDateOfBirth(Date dateOfBirth) {
this.dateOfBirth = dateOfBirth;
}
}
Test-Class:
@Test
public final void testDeserializingPersonJsonToPersonClass()
throws JsonParseException, JsonMappingException, IOException {
final String jsonAsString = "[{\"FIRSTNAME\":\"John\",\"LASTNAME\":\"Doe\",\"DATEOFBIRTH\":\"1980-07-16T18:25:00.000Z\"}]";
final ObjectMapper mapper = new ObjectMapper();
final Person person = mapper.readValue(jsonAsString, Person.class);
assertNotNull(person);
assertThat(person.getFirstName(), equalTo("John"));
}
này kết thúc trong lỗi sau:
com.fasterxml. jackson.databind.JsonMappingException: Không thể deserialize thể hiện của ...
Không thể thay đổi cả JSON-String lẫn POJO-Class.
* Nó không thể thay đổi không JSON-String hay POJO-Class *, sau đó nó là không thể. –