我使用google-gson将Java映射序列化为JSON字符串。它提供了一个生成器来处理null值:
Gson gson = new GsonBuilder().serializeNulls().create();
问题在于结果是字符串null,如:
null
gson.toJson(categoriesMap)); {"111111111":null}
所需的结果是:
{"111111111":""}
我可以为null和进行字符串替换"",但这很难看并且容易出错。是否有本地gson支持添加自定义String而不是null?
""
如果这是您的应用程序类型,则可以注册类型适配器。但是Gson不允许您更改字符串或原始类型的序列化形式。
最好的选择是更改Java对象。或放宽对null的限制。