I am trying to convert JSON into POJO.
I have worked with Jackson to convert standard JSON file.
In this particular case, I would like to overwrite the key value to "default" class/variable. In this case, there are multiple key value to be replaced (ie. hundreds, and the key values to be replaced are unknown).
Is this possible? I thought of storing it into Map, then iterate and store each into POJO, but wondering if there is different option, since I am not that familiar with storing JSON to Map.
Example of the JSON to be processed:
"People" : {
"person1" : {
"name" : "john doe",
"address" : "123 main st",
"email" : "[email protected]"
},
"person2" : {
"name" : "bob cat",
"address" : "234 dog st",
"email" : "[email protected]"
},
"person3" : {
"name" : "foo bar",
"address" : "111 1st ave",
"email" : "[email protected]"
},
"person8" : {
"name" : "james bono",
"address" : "999 alaska st",
"email" : "[email protected]"
}
}
Is it possible to generate the class in the following structure? The main issue is there are hundreds of value to be replaced and assuming they are unknown, I can't use this approach.
@JsonIgnoreProperties(ignoreUnknown = true)
public class People {
@JsonAlias({"person1", "person2"})
private List<Details> person; // --> this should be the default replacing person1, person2, and so on
private class Details {
String name;
String address;
String email;
}
}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…