我想保留第一个附加属性(不同级别有几个附加属性)并删除其他属性:
{
"$schema": "http://json-schema.org/draft-03/schema",
"type": "object",
"description": "Test.",
"additionalProperties": true,
"properties": {
"spec": {
"type": "object",
"description": "reference spec",
"additionalProperties": true,
"properties": {
"id": {
"type": "string",
"maxLength": 256
}
}
},
"spec1": {
"type": "array",
"description": "reference spec2",
"items": {
"type": "object",
"description": "specblabla.",
"additionalProperties": true,
"properties": {
public void printJsonObject(JsonObject jsonObj)
{
jsonObj.keySet().forEach(keyStr ->
{
Object keyvalue = jsonObj.get(keyStr);
System.out.println("key: "+ keyStr + " value: " + keyvalue);
if(keyStr.equals("additionalProperties"))
{
jsonObj.remove("additionalProperties");
}
//for nested objects iteration if required
if (keyvalue instanceof JsonObject)
{
printJsonObject((JsonObject)keyvalue);
}
});
}
如何在 Java 中执行此操作,我尝试使用此代码,但给出了一个错误,即我无法排除元素应有的交互。 我试图遍历 json 但无法删除它!
提前致谢!