Java下利用Jackson进行JSON解析和序列化

来源:互联网 发布:linux连接mysql数据库 编辑:程序博客网 时间:2024/05/22 00:48

利用Jackson实现json和对象之间的相互转化:


链接:http://itindex.net/detail/51074-java-%E5%88%A9%E7%94%A8-jackson



根据转载的内容,自己写的测试:


定义一个school 类:有属性student


public class School {

private Student student;


public Student getStudent() {
return student;
}


public void setStudent(Student student) {
this.student = student;
}


@Override
public String toString() {
return "School [student=" + student + "]";
}

}


Student类:


public class Student {
private int id;

private String name;

private String sex;


public int getId() {
return id;
}


public void setId(int id) {
this.id = id;
}


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public String getSex() {
return sex;
}


public void setSex(String sex) {
this.sex = sex;
}


@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + ", sex=" + sex + "]";
}

}

//json和对象之间的转换:


public class Test3 {
public static void main(String[] args) throws Exception {
Student student=new Student();
student.setId(1001);
student.setName("naruto");
student.setSex("男");

School school=new School();
school.setStudent(student);

//将对象转换为json
ObjectMapper mapper = new ObjectMapper();  
   String json = mapper.writeValueAsString(school);  
   System.out.println(json);
   //将json转换为对象
 System.out.println("-------------华丽的分割线--------------------");
   School school2 = mapper.readValue(json, School.class);  
   System.out.println("id   "+school2.getStudent().getId());
   System.out.println("姓名   "+school2.getStudent().getName());
   System.out.println("性别    "+school2.getStudent().getSex());     
}
}

后台:

{"student":{"id":1001,"name":"naruto","sex":"男"}}
-------------华丽的分割线--------------------
id   1001
姓名   naruto
性别    男




0 0
原创粉丝点击