當您在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中使用數組,而不是對象。確保你瞭解差異。 –