Jackson学习笔记-对象序列化
2024-10-11 21:00:06
一、用ObjectMapper.readValue(jsonString, Student.class) , ObjectMapper.writeValueAsString(student)
import java.io.IOException;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.map.SerializationConfig; public class JacksonTester {
public static void main(String args[]){ //创建ObjectMapper对象。它是一个可重复使用的对象。
ObjectMapper mapper = new ObjectMapper();
String jsonString = "{\"name\":\"Mahesh\", \"age\":21}"; //map json to student
try {
Student student = mapper.readValue(jsonString, Student.class);
System.out.println(student); mapper.enable(SerializationConfig.Feature.INDENT_OUTPUT);
jsonString = mapper.writeValueAsString(student);
System.out.println(jsonString); } catch (JsonParseException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
} class Student {
private String name;
private int age;
public Student(){}
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 String toString(){
return "Student [ name: "+name+", age: "+ age+ " ]";
}
}
二、将Java对象序列化到一个JSON文件,然后再读取JSON文件获取转换为对象。在这个例子中,创建了Student类。创建将有学生对象以JSON表示在一个student.json文件。
import java.io.File;
import java.io.IOException; import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper; public class JacksonTester2 {
public static void main(String args[]){
JacksonTester2 tester = new JacksonTester2();
try {
Student student = new Student();
student.setAge(10);
student.setName("Mahesh");
tester.writeJSON(student); Student student1 = tester.readJSON();
System.out.println(student1); } catch (JsonParseException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} //这里将介绍将Java对象序列化到一个JSON文件,然后再读取JSON文件获取转换为对象。
//在这个例子中,创建了Student类。创建将有学生对象以JSON表示在一个student.json文件。
private void writeJSON(Student student) throws JsonGenerationException, JsonMappingException, IOException{
ObjectMapper mapper = new ObjectMapper();
mapper.writeValue(new File("student.json"), student);
} private Student readJSON() throws JsonParseException, JsonMappingException, IOException{
ObjectMapper mapper = new ObjectMapper();
Student student = mapper.readValue(new File("student.json"), Student.class);
return student;
}
}
最新文章
- 这算是ASP.NET MVC的一个大BUG吗?
- 后台数据库读取Html值 到前台显示不了样式
- Git很好的教程
- 程序员是怎么炼成的---OC题集--练习答案与题目(3)
- php编程中容易忽略的地方
- jQuery的touchstart,touchmove,touchend的获取位置
- iOS开发- 查询项目代码行数
- 【转】关于python中re模块split方法的使用
- JavaScript操作符(一元操作符)
- web前端图片上传(3)--filereader
- java web项目最简单的结构
- dom 及bom
- C#使用System.IO.Path获取文件路径、文件名
- hdu2196 Computer【树形DP】【换根法】
- /proc/iomem和/proc/ioports对应的fops
- linux系统修改route路由
- crontab 设置服务器定期执行备份工作
- 自己写的代码实现Session
- 40个Java多线程问题总结【转】
- MyEclipse+PyDev配置搭建Python开发环境