如何使用 gson 进行 java 序列化?安装 gson 库。序列化对象:使用 tojson() 方法将对象转换为 json 字符串。反序列化 json:使用 fromjson() 方法从 json 字符串还原对象。实战案例:在 rest api 中使用 gson 序列化 java 对象并返回 json 响应。

如何使用 GSON 进行 Java 序列化
简介
GSON(Google JSON)是一个 Java 库,用于将对象序列化为 JSON,并从 JSON 反序列化对象。它易于使用,速度快,并且支持广泛的数据类型。
立即学习“Java免费学习笔记(深入)”;
安装 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 响应,前端应用程序或其他客户端可以轻松地解析该响应。











