jackson
jackson 解析器
在 Java 里面常见的 json 解析器有
Jsonlib,Gson,fastjson,jackson
常用方法
readValue(json 字符串数据, Class) json 转换为 java 对象
writeValue(参数,obj):
File:将 obj 对象转换为 JSON 字符串,并保存到指定的文件中
Writer:将 obj 对象转换为 JSON 字符串,并将 json 数据填充到字符输出流中
OutputStream:将 obj 对象转换为 JSON 字符串,并将 json 数据填充到字节输出流中
writeValueAsString(obj): 将对象转为 json 字符串
对象转 Json
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class jsonDemo {
public static void main(String[] args) {
Person person = new Person();
person.setName("xiaoming");
person.setSex("name");
person.setAge(18);
ObjectMapper objectMapper = new ObjectMapper();
try {
String s = objectMapper.writeValueAsString(person);
System.out.println(s);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
}
}
public class Person {
public String name;
public String Sex;
public int Age;
public void setName(String name) {
this.name = name;
}
public void setSex(String Sex) {
this.Sex = Sex;
}
public void setAge(int Age) {
this.Age = Age;;
}
}
运行后显示数据
{"name":"xiaoming","Sex":"name","Age":18}
list集合转换json
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.ArrayList;
import java.util.List;
public class jsonDemo {
public static void main(String[] args) {
Person p1= new Person();
p1.setName("xiaoming");
p1.setSex("name");
p1.setAge(18);
Person p2= new Person();
p2.setName("xiaoming");
p2.setSex("name");
p2.setAge(18);
ObjectMapper objectMapper = new ObjectMapper();
List<Person> list = new ArrayList<>();
list.add(p1);
list.add(p2);
try {
String s = objectMapper.writeValueAsString(list);
System.out.println(s);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
}
}
[{"name":"xiaoming","Sex":"name","Age":18},{"name":"xiaoming","Sex":"name","Age":18}]
json转Java对象
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class jsonDemo {
public static void main(String[] args) throws IOException {
String json = "{\"sex\":\"男\",\"age\":\"18\",\"name\":\"xiaoming\"}";
ObjectMapper objectMapper = new ObjectMapper();
Person person = objectMapper.readValue(json, Person.class);
System.out.println(person.toString());
}
}
Source & Reference
https://www.cnblogs.com/nice0e3/p/13552644.html