Условно десериализовать объект на основе формата JSON - PullRequest
3 голосов
/ 03 февраля 2012

Я использую Джексона для анализа JSON, и у меня следующая структура JSON:

["foo", {"baz": []}, {"myList": ["a", "b", "c"]}]

Я хотел бы ТОЛЬКО сериализовать объекты со свойством "myList" в

public class MyClass {
  List<String> myList;
}

, где ["a", "b", "c"] используется в качестве значения myList. Все остальные объекты должны просто превратиться в значение по умолчанию Map<String, Object>, а все остальное (массивы, строки и т. Д.) Должно превратиться в значения по умолчанию.

Есть ли способ сделать это?

1 Ответ

1 голос
/ 03 февраля 2012

Вы можете искать содержимое дерево для элемента "myList" и добавлять его значения к "MyClass" , если он будет найден; в противном случае просто перенаправьте содержимое на стандартный десериализатор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...