Десериализация Джексона с общими аргументамиJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Десериализация Джексона с общими аргументами

Сообщение Гость »


работал с десериализацией Джексона и пытался найти способ не передавать класс явно для десериализации. Вот что у меня есть:

public T deserialize(String json) { вар картограф = новый ObjectMapper(); вар typeReference = новый TypeReference(){}; return mapper.readValue(json, typeReference); } // код вызова var someJson = {\"SomeKey\": \"SomeValue\"} Модель MyModel = deserialize(someJson); с помощью приведенного выше кода я получаю ClassCastException, сообщающий:

этот класс java.util.LinkedHashMap нельзя привести к классу com.personal.carrot.MyModel.

Теперь я знаю, что мы можем заставить его работать, передав модель в качестве аргумента методу:

public T deserialize(String json, TypeReference typeReference) { вар картограф = новый ObjectMapper(); return mapper.readValue(json, typeReference); } // код вызова var someJson = {\"SomeKey\": \"SomeValue\"} вар typeRef = новый TypeReference(){}; Модель MyModel = deserialize(someJson, typeRef); Из сообщения stackoverflow я понимаю, что он принимает LinkedHashMap в качестве типа по умолчанию, поскольку T будет означать, что T расширяет Object>.

Есть ли способ получить десериализацию без явной передачи new TypeReference(){} или MyModel.class?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Десериализация Джексона с анонимными классами
    Anonymous » » в форуме JAVA
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Десериализация Джексона в обход конечных полей
    Anonymous » » в форуме JAVA
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Десериализация Джексона не удалась в тесте Mockmvc, но работает нормально при запуске приложения.
    Anonymous » » в форуме JAVA
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Десериализация Джексона: считать определенные строковые значения нулевыми.
    Anonymous » » в форуме JAVA
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Десериализация Джексона не работает в Java 17
    Anonymous » » в форуме JAVA
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»