的完整JSON字符串我有具有以下领域如何生成Java实例
class MyEvent {
private long eventId;
private EventType eventType;
private EventCategory category;
private List<String> params;
private Boolean exists;
private long time;
private MyLocation location;
private boolean eventFlag;
private EventCriticality criticality;
private EventStatus eventStatus;
}
正如你可以看到这个类有原始的油田,它们与原始类型的包装类(如布尔存在),枚举(EventStatus,EventCategory等)和其他参考字段(如MyLocation位置),集合
我想生成完整的json字符串,它具有所有字段。
当我使用
Gson gson = new GsonBuilder().setPrettyPrinting().create();
String json = gson.toJson(myevent);
我只得到了原始的领域所产生的JSON是
{
"eventid": 0,
"time": 0,
"eventFlag": false
}
这里myevent是MyEvent的情况下,我获得通过使用反射,即我有课,然后调用clazz.newInstance()
我怎样才能生成一个json字符串,所有的领域,即完整的json字符串。
它可能发生,你的其他领域是'空',所以Gson忽略它。你能检查它吗?你可以明确地按照以下方式设置序列化空值: 'Gson gson = new GsonBuilder()。setPrettyPrinting()。serializeNulls()。create();' – OleGG
这里是一个例子http://thegeekyland.blogspot.com/2015 /11/serializing-and-deserializing-json-from.html – Arlind