我正在使用Java中的LightCouch库将Json对象保存到ouchdb。
对于Jsons,我正在使用Gson库。

现在,当我想使用空值保存字段时,将其保存到数据库时会完全跳过该字段。

{
   "name" : "KH",
   "lname" : null
}


但是将其保存到数据库后,它仅保存名称,并跳过lname。

API documentation中提到


  具有空值的字段不会通过defualt序列化。


现在我不知道如何使它实际序列化null值并将其推送到数据库。你能告诉我如何推一个空值吗?

提前致谢

最佳答案

如果有人在寻找遮阳篷,那就是:

CloudantClient cloudantClient =  new CloudantClient(cloudantDataConnProps);
GsonBuilder gsonBuilder = new GsonBuilder();
gsonBuilder.serializeNulls().create();
cloudantClient.dbClient.setGsonBuilder(gsonBuilder);


Lightcouch使用默认的gsonBuilder进行序列化,您需要给他一个新的序列化空字段

关于java - LightCouch不会保存具有空值的字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24612919/

10-11 04:41