📅  最后修改于: 2023-12-03 15:07:53.744000             🧑  作者: Mango
JSON (JavaScript Object Notation) 是一种轻量级的数据格式,它通常用于数据交换。JSON 能够很好地与前端 JavaScript 应用程序一起工作,因为它是 JavaScript 对象的子集。
Java 中有许多处理 JSON 数据的 API。下面介绍其中两个:
Gson 是一个 Google 推出的功能强大的处理 JSON 数据的 API,它具有以下特点:
下面是使用 Gson 将一个 Java 对象序列化成 JSON 的示例:
// 导入 Gson 包
import com.google.gson.Gson;
// 创建一个 Java 对象
class User {
String name;
int age;
String[] hobbies;
User(String name, int age, String[] hobbies) {
this.name = name;
this.age = age;
this.hobbies = hobbies;
}
}
// 将 Java 对象序列化成 JSON
User user = new User("张三", 20, new String[]{"篮球", "游泳"});
Gson gson = new Gson();
String json = gson.toJson(user);
System.out.println(json);
输出结果:
{"name":"张三","age":20,"hobbies":["篮球","游泳"]}
Jackson 是另一个流行的处理 JSON 数据的 API。它具有以下特点:
下面是使用 Jackson 将一个 Java 对象序列化成 JSON 的示例:
// 导入 Jackson 包
import com.fasterxml.jackson.databind.ObjectMapper;
// 创建一个 Java 对象
class User {
String name;
int age;
String[] hobbies;
User(String name, int age, String[] hobbies) {
this.name = name;
this.age = age;
this.hobbies = hobbies;
}
}
// 将 Java 对象序列化成 JSON
User user = new User("张三", 20, new String[]{"篮球", "游泳"});
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(user);
System.out.println(json);
输出结果:
{"name":"张三","age":20,"hobbies":["篮球","游泳"]}
本文介绍了两个处理 JSON 数据的 Java API,它们分别是 Gson 和 Jackson。使用这些 API,我们可以轻松地将 Java 对象序列化成 JSON 或将 JSON 反序列化为 Java 对象。