JSON-потребитель полиморфных объектов
Я анализирую JSON и испытываю трудности с одной структурой, которая может иметь одну из трех форм. В моем случае это может быть нульмерный, одномерный или двумерный. Есть ли способ, которым я могу проверить JSON на лету, чтобы определить, какой это? Или, может быть, потреблять его в любом случае и выяснить, что это потом.
Структуры выглядят так и могут быть встроены в другие структуры.
"details":{
"Product":"A zero-dimensional Product"
},
"details":{
"Product":"A one-dimensional Product",
"Dimensions": [ "Size" ],
"Labels": [ "XS", "S", "M", "L" ]
},
"details":{
"Product":"A two-dimensional Product",
"Dimensions": [ "Size", "Fit" ],
"Labels": [[ "XS", "S", "M", "L" ],[ "26", "28", "30", "32" ]]
}
То, что я могу искать, это общий класс, с которым Джексон всегда будет соответствовать.
Что-то вроде перевода:
{
"SomeField": "SomeValue",
...
"details":{
...
}
}
В:
class MyClass {
String SomeField;
...
AClass details;
}
Есть ли классAClass
Я могу определить, что может быть универсальным получателем для любой структуры или массива JSON?