import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
public class JsonSerializationExample {
public static void main(String[] args) {
ObjectMapper mapper = new ObjectMapper();
MyObject obj = new MyObject(1, "example");
try {
// 序列化(对象 -> JSON字符串)
String jsonString = mapper.writeValueAsString(obj);
System.out.println("序列化后的JSON字符串: " + jsonString);
// 反序列化(JSON字符串 -> 对象)
MyObject objDeserialized = mapper.readValue(jsonString, MyObject.class);
System.out.println("反序列化后的对象: " + objDeserialized);
} catch (IOException e) {
e.printStackTrace();
}
}
}
class MyObject {
private int id;
private String name;
public MyObject(int id, String name) {
this.id = id;
this.name = name;
}
// Getter 和 Setter 省略
// ...
@Override
public String toString() {
return "MyObject{id=" + id + ", name='" + name + "'}";
}
}
这段代码展示了如何使用Jackson库来实现Java对象的JSON序列化和反序列化。首先创建了一个名为MyObject
的简单类,然后使用ObjectMapper
实例来进行序列化和反序列化操作。代码中包含了基本的异常处理,以确保在发生I/O错误时能够打印堆栈跟踪信息。