我正在使用jackson lib将json对象添加到jsonarray然后Stringify我的jsonarray将其保存到我的表中作为字符串
JsonObject obj = new JsonObject();
obj.put("id",1).put("data","test");
JsonArray arr = new JsonArray();
arr.add(obj);
arr.toString();
//out : [{"map":{"id":1,"data":"test"},"empty":false}]
//result wanted : [{"id":1,"data":"test"}]
那么如何在没有地图和空键的情况下获得最后的结果,以及为什么首先添加这些键呢?
答案 0 :(得分:0)
我对代码做了一些小改动,我使用了以下maven依赖https://mvnrepository.com/artifact/org.json/json/20160810,你使用的是org.json而不是jackson。
JSONObject obj = new JSONObject();
try {
obj.put("id",1).put("data","test");
} catch (JSONException e1) {
e1.printStackTrace();
}
JSONArray arr = new JSONArray();
arr.put(obj);
System.out.println(arr.toString());
输出:[{“data”:“test”,“id”:1}]
答案 1 :(得分:0)
JsonObject
。 不使用toString()
:
序列化(JsonElement - > String)
ObjectMapper mapper = new ObjectMapper(); om.registerModule(new VertxJsonModule()); String jsonObject = mapper.writeValueAsString(new JsonObject()); String jsonArray = mapper.writeValueAsString(new JsonArray());