大家好,又见面了,我是全栈君。
首先须要下载3个包,下载地址在Github FasterXML,这三个核心模块各自是:
Streaming (“jackson-core“) defines low-level streaming API, and includes JSON-specific implementations
Annotations (“jackson-annotations“) contains standard Jackson annotations
Databind (“jackson-databind“) implements data-binding (and object serialization) support on streaming package;
it depends both on streaming and annotations packages。
json文件:
<span style="font-family:SimHei;font-size:18px;">{
"name":" vonzhou",
"age":123,
"isMan":true
}</span>
POJO类:
<span style="font-family:SimHei;font-size:18px;">package jackson.test;
import java.util.HashMap;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonProperty;
public class ExamplePOJO {
@JsonProperty( "name")
private String name;
@JsonProperty( "age")
private Integer age;
@JsonProperty( "isMan")
private Boolean isMan;
private Map<String,Object> additionalProperties = new
HashMap<String, Object>();
@JsonProperty( "name")
public String getName() {
return name;
}
@JsonProperty( "name")
public void setName(String name) {
this. name = name;
}
@JsonProperty( "age")
public Integer getAge() {
return age;
}
@JsonProperty( "age")
public void setAge(Integer age) {
this. age = age;
}
@JsonProperty( "isMan")
public Boolean getIsMan() {
return isMan;
}
@JsonProperty( "isMan")
public void setIsMan(Boolean isMan) {
this. isMan = isMan;
}
public Map<String, Object> getAdditionalProperties() {
return additionalProperties;
}
public void setAdditionalProperties(String name, Object obj) {
this. additionalProperties.put(name, obj);
}
@Override
public String toString() {
return "ExamplePOJO{\n" +
"name :'" + name + "',\n" +
"age : " + age + ",\n" +
"isMan :" + isMan + ",\n" +
"additionalProperties : " + additionalProperties +
"\n}";
}
}
</span>
解析json文件的类:
<span style="font-family:SimHei;font-size:18px;">package jackson.test;import java.io.File;import java.io.IOException;import com.fasterxml.jackson.core.JsonParseException;import com.fasterxml.jackson.databind.JsonMappingException;import com.fasterxml.jackson.databind.ObjectMapper;public class Driver { public static void main(String[] args) { ObjectMapper mapper = new ObjectMapper(); try { ExamplePOJO bean = mapper.readValue(new File("test.json"), ExamplePOJO.class); System.out.println("name : " + bean.getName()); System.out.println("age : " + bean.getAge() ); System.out.println("isMan : " + bean.getIsMan() ); System.out.println("==================="); System.out.println(bean.toString()); } catch (JsonParseException e) { e.printStackTrace(); }catch (JsonMappingException e){ e.printStackTrace(); }catch (IOException e){ e.printStackTrace(); } }}</span>
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/115208.html原文链接:https://javaforall.cn