Gson Serialisiert Feld nur, wenn nicht null ist oder nicht leer ist

Ich habe die Anforderung, wo ich konvertieren müssen java-Objekt zu json.

Ich bin mit Gson, aber ich brauche den Konverter nur zu serialisieren, die nicht null sind oder nicht leeren Werte.

Beispiel:

//my java object looks like
class TestObject{
    String test1;
    String test2;
    OtherObject otherObject = new OtherObject();
}

nun meine Gson Instanz zu konvertieren, das Objekt zu json sieht wie

Gson gson = new Gson();
TestObject obj = new TestObject();
obj.test1 = "test1";
obj.test2 = "";

String jsonStr = gson.toJson(obj);
println jsonStr;

In der oben drucken, das Ergebnis ist

{"test1":"test1", "test2":"", "otherObject":{}}

Hier ich wollte nur das Ergebnis

{"test1":"test1"}

Seit der test2 ist leer und otherObject ist leer, ich will nicht, dass Sie serialisiert werden, um json-Daten.

Btw, ich bin mit Groovy/Grails also, wenn es ein plugin dazu wäre es gut, wenn nicht jeder Vorschlag zur Anpassung der gson-Serialisierung-Klasse wäre gut.

Woher weiß er das otherObject leer ist?

InformationsquelleAutor zdesam | 2013-08-28

Schreibe einen Kommentar