本文僅用於記錄一些內容。
用於解析的代碼:
// 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/