我已经开始使用 Jackson 作为 JSON 生成器,作为 google GSON 的替代品。我遇到了杰克逊生成对象的问题:如果对象确实为空,则为空。另一方面,GSON 在 JSON 中生成 NO 条目,这是我想要的行为。当一个对象丢失时,有没有办法阻止杰克逊生成空对象/值?
杰克逊
ObjectMapper mapper = new ObjectMapper();
StringWriter sw = new StringWriter();
mapper.writeValue(sw, some_complex_object);
String jackson = sw.getBuffer().toString();
System.out.println("********************* START JACKSON JSON ****************************");
System.out.println(jackson);
System.out.println("********************* END JACKSON JSON ****************************");
生成这个:
{"eatwithrustyspoon":{ "urlList":null ,"device":"iPad","os":"iPhone OS","peer_id":
GSON 看起来像这样:
Gson gson = new Gson();
String json = gson.toJson(some_complex_object);
System.out.println("********************* START GSON JSON ****************************");
System.out.println(json);
System.out.println("********************* END GSON JSON ****************************");
它会生成这个(这是我想要的 - 请注意“urlList”:null 没有生成):
{"eatwithrustyspoon":{"device":"iPad","os":"iPhone OS","peer_id"