getan werden, wenn Sie eine Lösung mit Jackson
Bibliothek wollen, hier ist es.
Die benutzerdefinierte Klasse:
@JsonRootName("complaint_Map")
public class Complaint {
private String firstKey;
private String secondKey;
@JsonProperty("1000067730")
public String getFirstKey() {
return firstKey;
}
@JsonProperty("1000067730")
public void setFirstKey(String firstKey) {
this.firstKey = firstKey;
}
@JsonProperty("1000067730-06")
public String getSecondKey() {
return secondKey;
}
@JsonProperty("1000067730-06")
public void setSecondKey(String secondKey) {
this.secondKey = secondKey;
}
@Override
public String toString() {
return "Complaint{" +
"firstKey='" + firstKey + '\'' +
", secondKey='" + secondKey + '\'' +
'}';
}
}
Und die Art und Weise der Prüfung:
String jsonString = "{\"complaint_Map\":{\"1000067730\":\"3011351597604397\",\"1000067730-06\":\"10582576134561065\"}}";
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.UNWRAP_ROOT_VALUE, true);
try {
Complaint complaint = mapper.readValue(jsonString, Complaint.class);
System.out.println(complaint);
} catch (Exception e) {
e.printStackTrace();
}
ich die folgende Version verwendet (in Maven pom
):
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.1.3</version>
</dependency>
Verwendung jackson oder Gson –
Was Hast du es versucht? Was ist der Grund, warum die Frage mit "Spring-Boot" zu versehen ist? –
Weil ich in meinem Spring-Boot-Projekt die Benutzernamen-Basisdaten zu den Policy-Daten von RIAK-KV-Buckets in andere Buckets eines anderen Servers verschieben muss, deshalb ist hier kein Spring-Boot-Tag erforderlich !!! –