Tengo un problema al serializar un objeto usando Gson.¿Gson serializa POJO con el valor raíz incluido?
@XmlRootElement
class Foo implements Serializable {
private int number;
private String str;
public Foo() {
number = 10;
str = "hello";
}
}
Gson serializará esto en un JSON
{"number":10,"str":"hello"}
.
Sin embargo, quiero que sea
{"Foo":{"number":10,"str":"hello"}}
,
así que básicamente incluye el elemento de nivel superior. Traté de googlear una manera de hacer esto en Gson, pero no tuve suerte. ¿Alguien sabe si hay una manera de lograr esto?
Gracias!
bueno, esto significa que necesito para codificar el tipo de clase "Foo" en el elemento sin embargo. – fei
@fei sí. Idealmente, lo que obtienes de Gson es correcto. La representación correcta del objeto 'Foo' en JSON es' {"number": 10, "str": "hello"} '. Si hay una clase que tiene Foo como su variable de instancia en ese caso, deberías haber esperado '{" foo ": {" number ": 10," str ":" hello "}}' - pero si quieres anteponer nombre de clase explícitamente, tendrá que agregarlo explícitamente. – Nishant