Я пытаюсь определить схему json, в которой есть несколько свойств, экземпляры одного и того же объекта для конечной точки приложения Java.
Простой пример того, что я пытаюсь сделать это
{
"$schema": "http://json-schema.org/draft-07/schema",
"type": "object",
"properties": {
"last": {
"$ref": "#/$def/node"
},
"next": {
"$ref": "#/$def/node"
}
},
"$def": {
"node": {
"type": "object",
"properties": {
"item": "object"
}
}
}}
Проблема в том, что когда я передаю это в jsonschema2pojo, он интерпретирует это как last
и next
как отдельные классы, а не экземпляры общего объекта node
.
----------------------------------- com.example.Last. java -----------------------------------
package com.example;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class Last {
@SerializedName("item")
@Expose
public Object item;
}
------ ----------------------------- com.example.Next. java ------------ -----------------------
package com.example;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class Next {
@SerializedName("item")
@Expose
public Object item;
}
------------------ ----------------- com.example.Node. java ------------------------ -----------
package com.example;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class Node {
@SerializedName("last")
@Expose
public Last last;
@SerializedName("next")
@Expose
public Next next;
}
Можно ли иметь несколько экземпляров свойства в json -схеме, и могу ли я express это? Или это ограничение инструмента / плагина jsonschema2pojo? Или json -схема требует помещения нескольких экземпляров в массив?