本文仅用于记录一些内容。
用于解析的代码:
// MyBean value = mapper.readValue(src, MyBean.class); // 'src'
// can be File, InputStream, Reader, String
ObjectMapper mapper = new ObjectMapper();
try {
// MyBean bean=mapper.readValue(json, MyBean.class);
MyBean value =mapper.readValue("{\"name\":\"Bob\", \"age\":13}",MyBean.class);
// Field value = mapper.readValue(json, Field.class);
et.setText(value.getName());
} catch (JsonParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JsonMappingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
MyBean:
class MyBean {
private String name;
// private boolean on;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "MyBean [name=" + name + ", age=" + age + "]";
}
public MyBean() {//无参构造器是必须有的
}
}
另外需要注意:MyBean不能是解析代码所在类的内部类,否则会报错,类似这样的
com.fasterxml.jackson.databind.JsonMappingException: No suitable constructor found for type [simple type, class com.famo.vehiclesmarks.activity.JacksonActivity$MyBean]: can not instantiate from JSON object (need to add/enable type information?)
获取jackson的地址:http://jackson.codehaus.org/