问: 使用jackson解析json字符串转为pojo对象。
public static void main(String[] narg) {
ObjectMapper mapper = new ObjectMapper();
String jsonString = "{\"name\":\"xiaoming\",\"age\":\"21\"}";//json 需要使用双引号?数字呢?
try {
Student std = (Student) mapper.readValue(jsonString, Student.class);
System.out.print(std);
jsonString = mapper.writeValueAsString(std);
System.out.println(jsonString);
} catch (IOException e) {
e.printStackTrace();
}
}
使用jar:
jackson-annotations-2.3.2
jack-core-2.3.2
jackson-databind-2.5
解决方案:
异常说明找不到 com/fasterxml/jackson/annotation/ObjectIdResolver 这个类,打开jar包(jackson-annotation2.3.2 )发现确实没有这样一个类,
将jar更换为 jackson-annotation-2.5
更换之后又出现了几个错误,这些错误都是找不到指定的类,都是因为版本的问题。统一将所有jar包改为2.5版本。正常运行无错误。