是否有一个常用的库,它有用于以类型安全的方式表示json的类?我正在寻找一个json对象存储在Map中,json数组存储在列表中的地方。
我想做的是这样的:
myJson.get("myInt").asInt();
myJson.get("myString").asString();.get()应该返回一个缺少的节点对象,因此不需要进行空检查。
Jackson是一个非常好的库,可以完成所有这些工作,但是Jackson JsonObject和JsonArray类并没有实现Map和List。
发布于 2014-12-12 18:05:13
您必须将JSON转换为所需的类型。下面的示例将其转换为Map<String,String>。如果无法转换,则会引发异常。
public class JsonMapExample {
public static void main(String[] args) {
String json = "{\"name\":\"mkyong\", \"age\":\"29\"}";
Map<String,String> map = new HashMap<String,String>();
ObjectMapper mapper = new ObjectMapper();
try {
map = mapper.readValue(json, new TypeReference<HashMap<String,String>>(){});
} catch (JsonMappingException e) {
e.printStackTrace();
}
}
}这通常是在通过网络发送序列化对象时发生的情况,在编组时会丢失类型安全性,然后通过解组将其添加到另一端。
请参见:
https://stackoverflow.com/questions/27449365
复制相似问题