Gson序列化到特定字段,即使它是null

时间:2017-08-25 10:47:07

标签: java json gson

我需要将java对象转换为json。

我正在使用Gson但我需要序列化所需的字段,即使没有值,即

例如:

public class Response<T> 
{
   private String status;
   private String message;
   private T data;
   transient private String resource;
}

即使数据为空或为空,我希望将其序列化为具有空值的json数据。

物件:

  

新响应(“成功”,null,null)     ,new Response(null,null,null)

通缉输出: -  { status : "success", data : {}} {data : {}}

1 个答案:

答案 0 :(得分:0)

尝试serializeNulls()

  

配置Gson以序列化空字段。默认情况下,Gson省略所有   序列化期间为空的字段。

GsonBuilder gsonBuilder = new GsonBuilder();  
gsonBuilder.serializeNulls();  
Gson gson = gsonBuilder.create();

User user = new User("Sankar", null, 25);  
String userJson = gson.toJson(user); 

输出是:

{
  "age": 25,
  "email": null,
  "name": "Sankar"
}