一个简单的示例,使用Jackson将JSON字符串转换为Map。
String json = "{name:\"mkyong\"}";
Map<String,String> map = new HashMap<String,String>();
ObjectMapper mapper = new ObjectMapper();
map = mapper.readValue(json, new TypeReference<HashMap<String,String>>(){});
问题
执行该程序时,它将出现以下错误消息
org.codehaus.jackson.JsonParseException:
Unexpected character ('n' (code 110)): was expecting double-quote to start field name
at [Source: java.io.StringReader@7c87c24a; line: 1, column: 3]
解
在JSON规范中,它要求对字段名称使用双引号。 要使Jackson能够处理未加引号的字段名称,