是否有可用于提取java中json的特定属性(json子集)的API /工具,类似于apache-commons beanutils copy?
例如,我有以下JSON
{
"fixed":[
{
"b":"some value",
"c":"some value",
"d":"some value",
"e":"some value",
"f":"some value"
},
{
"b":"value",
"c":"value",
"d":"value",
"e":"value",
"f":"value"
}
]
}
我想拥有以下json
{
"fixed":[
{
"b":"some value",
"e":"some value",
"f":"some value"
},
{
"b":"value",
"e":"value",
"f":"value"
}
]
}
我提出了以下方法,但不确定它是否是正确的方法
public JSONObject parseJSON(JSONObject data,List<String> subset){
JSONArray fixedArray = (JSONArray) data.get("fixed");
JSONObject resObj = new JSONObject();
JSONArray resArray = new JSONArray();
for(int i=0;i<fixedArray.size();i++){
JSONObject element = (JSONObject) fixedArray.get(i);
JSONObject resElement = new JSONObject();
for(String s:subset){
resElement.put(s, element.get(s));
}
resArray.add(resElement);
}
return resObj.put("fixed", resArray);
}
我查看了this SO问题,但对此主题没什么帮助。
答案 0 :(得分:0)
https://docs.oracle.com/javase/tutorial/jaxb/intro/arch.html如果需要,您也可以从JAXB创建自己的pojo类。