Serializing Null Fields
The default behaviour implemented in Gson is that null object fields are ignored.
Means Gson object does not serialize fields with null values to JSON. If a field in a Java object is null, Gson excludes it.
We can force Gson to serialize null values using the GsonBuilder.
Here's how you would configure a Gson instance to output null:
Gson gson = new GsonBuilder().serializeNulls().create();
Here is an example showing how to force serialization of null values with GSON:
/**
* @author TutorialToUs.com
*/
package com.tutorialtous.gson;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
public class SerializeNullExample {
public static void main(String args[]) {
Player obj = new Player();
obj.age = 29;obj.name = "Alex"; obj.gender = null;
Gson gson = new Gson();
System.out.println("Without NullSerialize:"+gson.toJson(obj));
GsonBuilder builder = new GsonBuilder();
gson = builder.serializeNulls().create();
System.out.println("With NullSerialize:"+gson.toJson(obj));
}
}
OutPut:-
Without NullSerialize:{"name":"Alex","age":29,"gamesplayed":[]}
With NullSerialize:{"name":"Alex","gender":null,"age":29,"gamesplayed":[]}
Once serializeNulls() has been
called the Gson instance created by the GsonBuilder will include
null fields in the serialized JSON.
The output from the
above example would be:
{"name":"Alex","gender":null,"age":29,"gamesplayed":[]}
Notice how the gender field is null.