当需要将一些对象模型转换为json时,目前使用了大量的HashMaps。我担心的是HashMap的开销对于这项任务来说太多了。
优点:HashMap在使用
方面非常灵活缺点:开销太大
仍然可能有一个论点是这些地图将会死亡。
不确定是否有更好的数据结构或方法呢?
==
Map:Object表示值可以是任何类型(List,Map,Integer,Long等......)。这就是为什么我认为它很灵活
我知道那些可以将对象转换为json的库,问题更像是一个允许json和真实对象之间转换的中间数据结构。
答案 0 :(得分:0)
为什么不使用com.fasterxml.jackson.databind.JsonNode
。遍历json树非常简单,例如:
String jsonInput = "{\"intKey\":1234, \"array\":[22,44,55],\"someObject\":{\"bool\":true,\"double\":2.5,\"string\":\"asdf\"}}";
ObjectMapper mapper = new ObjectMapper();
JsonNode node = mapper.readTree(jsonInput);
node.path("intKey").asInt(); // 1234
for(JsonNode n : node.path("array")) {
System.out.println(n.asInt()); // 22, 44, 55
}
JsonNode someObject = node.path("someObject");
someObject.path("bool").asBoolean(); // true
someObject.path("double").asDouble(); // 2.5
someObject.path("string").asText(); // asdf