Gson gson = new Gson();
Map<String,Object> map = new HashMap<String, Object>();
map.put("a", 1);
map.put("b", null);
System.out.println(gson.toJson(map)); //prints {"a":1}
如何获取所有条目?
请参阅Gson用户指南-
空对象支持
:
Gson中实现的默认行为是忽略空对象字段。这允许更紧凑的输出格式。但是,当JSON格式转换回其Java形式时,客户端必须为这些字段定义默认值。
这是配置Gson实例以输出null的方法:
Gson gson = new GsonBuilder().serializeNulls().create();
我想在Java中反序列化包含空值的json字符串。我想将对象反序列化为对象。json字符串类似于: 当我反序列化使用 由于对象中的that,我得到一个空指针异常。我如何指示Gson忽略空值的反序列化?
问题内容: 我目前正在使用杰克逊2.1.4,并且在将对象转换为JSON字符串时忽略字段时遇到了一些麻烦。 这是我的类,它充当要转换的对象: 这是我如何转换它: 这是输出: 如何避免这些空值?我只想获取“订阅”目的所需的信息! 这正是我要查找的输出: 我还尝试了@JsonInclude(Include.NON_NULL)并将所有变量都设置为null,但是它也不起作用!感谢您的帮助! 问题答案: 您将
下面是我的类,它充当要转换的对象: 下面是我的转换方法: 输出如下: 下面正是我要查找的输出: 我还尝试了@jsonInclude(include.non_null),并将我的所有变量置为null,但也没有起作用!谢谢你们的帮助!
问题内容: 我正在使用Retrofit(与OkHttp和GSON结合使用)与在线Web服务进行通信。该Web服务的所有响应都有一个默认包装,类似于: 在此示例中,将为或。此外,仅在处理请求时发生错误时才包含任何内容。最后但并非最不重要的一点将包含调用的实际结果(示例中为字符串,但是某些调用返回JSON数组或JSON对象)。 为了处理此元数据,我创建了一个通用类,如下所示: 我还创建了代表有时给出的
问题内容: 我在MySQL的某些列上创建了约束表。然后在PHP中,我编写了一个脚本,用于通过插入查询插入数据。当我省略此插入语句中的列之一时,我会期望收到来自MySQL的错误消息,并且我期望脚本会失败。相反,MySQL在字段中插入空字符串。在其他省略的字段中,数据为NULL,这很好。有人可以告诉我我做错了什么吗? 我正在使用此表: 这个插入语句: 或使用绑定变量: 问题答案: 如果确定未使用显式默
问题内容: 好的,因此注释非常适合标记不应运行测试用例。 但是,有时我想忽略基于运行时信息的测试。例如,如果我有一个并发测试需要在具有一定数量内核的计算机上运行。如果此测试是在单处理器计算机上运行的,那么我认为仅通过测试是不正确的(因为尚未运行),并且通过测试并破坏构建肯定不是正确的选择。 因此,我希望能够在运行时忽略测试,因为这似乎是正确的结果(因为测试框架将允许构建通过,但记录未运行测试)。我