Использовать имя класса в качестве корневого ключа для сериализации JSON Jackson

Предположим, у меня есть Pojo:

import org.codehaus.jackson.map.*;

public class MyPojo {
    int id;
    public int getId()
    { return this.id; }

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

    public static void main(String[] args) throws Exception {
        MyPojo mp = new MyPojo();
        mp.setId(4);
        ObjectMapper mapper = new ObjectMapper();
        mapper.configure(SerializationConfig.Feature.WRAP_ROOT_VALUE, true);
        System.out.println(mapper.getSerializationConfig().isEnabled(SerializationConfig.Feature.WRAP_ROOT_VALUE));
        System.out.println(mapper.writeValueAsString(mp));
    }
}

Когда я сериализую с использованием Jackson ObjectMapper, я просто получаю

true
{"id":4}

но я хочу

true
{"MyPojo":{"id":4}}

Я искал повсюду, документация Джексонов действительно неорганизована и в основном устарела.

Ответы на вопрос(11)

Ваш ответ на вопрос