​​Как решить десериализуйте следующий json с помощью Jackson

У меня есть следующий json:

{
  "id":"myid",
  "fields":{
    "body":"text body"
    }
}

, который я хочу десериализовать в следующий класс Java:

class TestItem {
private String id;
private String body;

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getBody() {
    return body;
}

public void setBody(String body) {
    this.body = body;
}

с помощью десериализатора Jackson Json. Это не работает, потому что поле body вложено во внутренний класс fields .

Я не могу изменить структуру json, поэтому есть ли способ (возможно, используя аннотации) переназначить поле body с TestItem.fields.body на TestItem.body ?

Изменить: Я должен был сказать, что это часть более широкой иерархии классов, и цель упражнения - уменьшить ее глубину. Другими словами, я знаю, что МОГУ объявить внутренний класс, а затем получить к нему доступ, но это не то, чего я пытаюсь достичь.

6
задан Rupert Bates 30 March 2011 в 11:14
поделиться