当您在JSONObject
中添加数据时,它将以自己的方式进行存储。 这是我想传达的例子。JAVA:将数据保存在JSON中
JSONObject obj = new JSONObject();
obj.put("metricname", "splunk-ui");
obj.put("timestamp", 1234567890);
obj.put("value",34);
System.out.println(obj);
上面的代码片段将给出下面的输出。
{
"metricname": "splunk-ui",
"value": 34,
"timestamp": 1234567890
}
这里的问题是: -
我在这个序列中添加数据: - metricname
,timestamp
,value
这是显示序列: - metricname
,value
,timestamp
那么,我如何执行我的数据添加顺序JSONObject
??
供参考: -这样做是因为mendatory我将这个JSON对象传递给可在metricname
,timestamp
,仅value
扫描数据的另一API。
这里我张贴的代码片段,我用来解决这个问题: -
我已经使用GSON库,此链接使此代码工作。 GSON Documention
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("metric", "mihirmonani");
jsonObject.addProperty("timestamp", 1346846400);
jsonObject.addProperty("value", 14);
JsonArray jArray = new JsonArray();
JsonObject jObject = new JsonObject();
jObject.addProperty("host", "splunk");
jObject.addProperty("host1", "splunk1");
jsonObject.add("tags",jObject);
System.out.println(jsonObject);
JSON对象的属性没有顺序。这不是特定于Java或任何实现。如果您需要特定的订单,则必须在JSON中使用数组,而不是对象。确保你了解差异。 –