Десериализация JSON с использованием только строки канонического типа с использованием Джексона - PullRequest
0 голосов
/ 18 января 2020

У меня есть JSON строка

{
    "type": "com.example.model.Person",
    "data": {
        "firstName": "Bob",
        ...
    }
}

Это представлено следующим классом.

public class Container<T> {
    private String type;
    private T data;

    // Getters and Setters
}

(я даже пытался просто удалить тип generi c и заменив его на Object.)

Я попробовал следующее:

  • new ObjectMapper().readValue(json, Class.forName(canonical))
  • new ObjectMapper().readValue(json, TypeFactory.defaultInstance().constructFromCanonical(canonical))

Мне нужно иметь возможность десериализовать строку JSON в экземпляр Container<T> только с заданной строкой канонического типа. Как это можно сделать?

1 Ответ

0 голосов
/ 18 января 2020

Я попробовал тот же пример, и он работает для меня

enter image description here

Это то же самое, что вы ищете, или что-то еще

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