如何使用GSON进行Java序列化?
如何使用GSON进行Java序列化?安装GSON库。序列化对象:使用toJson()方法将对象转换为JSON字符串。反序列化JSON:使用fromJson()方法从JSON字符串还原对象。实战案例:在RESTAPI中使用GSON序列化Java对象并返回JSON响应。
如何使用 GSON 进行 Java 序列化?安装 GSON 库。序列化对象:使用 toJson() 方法将对象转换为 JSON 字符串。反序列化 JSON:使用 fromJson() 方法从 JSON 字符串还原对象。实战案例:在 REST API 中使用 GSON 序列化 Java 对象并返回 JSON 响应。

如何使用 GSON 进行 Java 序列化
简介
GSON(Google JSON)是一个 Java 库,用于将对象序列化为 JSON,并从 JSON 反序列化对象。它易于使用,速度快,并且支持广泛的数据类型。
安装 GSON
通过 Maven 将 GSON 添加到你的项目:
com.google.code.gson gson 2.10.1
序列化对象
要将对象序列化为 JSON,请使用 toJson() 方法:
import com.google.gson.Gson;
public class Main {
public static void main(String[] args) {
User user = new User("John Doe", 30);
Gson gson = new Gson();
String json = gson.toJson(user);
System.out.println(json);
}
static class User {
private String name;
private int age;
public User(String name, int age) {
this.name = name;
this.age = age;
}
}
}输出:
{"name":"John Doe","age":30}反序列化 JSON
要从 JSON 反序列化对象,请使用 fromJson() 方法:
import com.google.gson.Gson;
public class Main {
public static void main(String[] args) {
String json = "{\"name\":\"John Doe\",\"age\":30}";
Gson gson = new Gson();
User user = gson.fromJson(json, User.class);
System.out.println(user.getName());
}
static class User {
private String name;
private int age;
public User(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
}
}输出:
John Doe
实战案例
假设你正在构建一个 REST API,需要将 Java 对象返回为 JSON 响应。使用 GSON,你可以像这样实现序列化:
import com.google.gson.Gson;
@RestController
@RequestMapping("/api/users")
public class UserController {
@GetMapping
public List getUsers() {
Gson gson = new Gson();
List users = // Fetch a list of users from the database;
String json = gson.toJson(users);
return ResponseEntity.ok(json)
.addHeader("Content-Type", "application/json");
}
static class User {
// Define the User model
}
} 通过这种方式,控制器可以返回序列化的 JSON 响应,前端应用程序或其他客户端可以轻松地解析该响应。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















