import java.io.File;
import java.io.IOException;
import java.util.Map;
import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
public class User {
int age;
int name;
public int getName() {
return name;
}
public void setName(int name) {
this.name = name;
}
public static void main(String[] args) throws IOException {
String s = "{\"name\":123}";
ObjectMapper mapper = new ObjectMapper();
User a = mapper.readValue(s, User.class);
System.out.println(mapper.writeValueAsString(a));
// writeJsonObject();
// readJsonObject();
// readJsonMap();
}
// 直接写入一个对象
public static void writeJsonObject() {
ObjectMapper mapper = new ObjectMapper();
Person person = new Person("nomouse", 25);
try {
mapper.writeValue(new File("c:/person.json"), person);
} catch (JsonGenerationException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
// 直接将一个json转化为对象
public static void readJsonObject() {
ObjectMapper mapper = new ObjectMapper();
try {
Person person = mapper.readValue(new File("c:/person.json"),
Person.class);
System.out.println(person.getName() + ":" + person.getAge());
} catch (JsonParseException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
// 直接转化为map
public static void readJsonMap() {
ObjectMapper mapper = new ObjectMapper();
try {
// 需要注意的是这里的Map实际为一个LikedHashMap,即链式哈希表,可以按照读入顺序遍历
Map map = mapper.readValue(new File("c:/person.json"), Map.class);
System.out.println(map.get("name") + ":" + map.get("age"));
} catch (JsonParseException e) {e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
class Person {
private String name;
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;
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public Person() {
}
}
jackson
最新推荐文章于 2024-04-28 15:15:34 发布