文章
gson 示例教程
import com.google.gson.*;
import org.junit.jupiter.api.Test;
public class GsonExampleTest {
@Test
public void testBuildJson() {
// 手动构建一个JSON对象
JsonObject user = new JsonObject();
user.addProperty("name", "Alice");
user.addProperty("age", 25);
user.addProperty("active", true);
// 添加NULL值
user.add("nickname", JsonNull.INSTANCE);
// 添加数组
JsonArray hobbies = new JsonArray();
hobbies.add("reading");
hobbies.add("coding");
user.add("hobbies", hobbies);
System.out.println(user.toString());
}
@Test
public void testParseJson() {
String jsonStr = "{\"name\":\"Alice\",\"age\":25,\"active\":true,\"nickname\":null,\"hobbies\":[\"reading\",\"coding\"]}";
JsonObject obj = JsonParser.parseString(jsonStr).getAsJsonObject();
String name = obj.get("name").getAsString();
int age = obj.get("age").getAsInt();
System.out.println("name: " + name + " age: " + age);
// 遍历数组
for (JsonElement hobby : obj.getAsJsonArray("hobbies")) {
System.out.println("hobby: " + hobby.getAsString());
}
}
}pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.learn</groupId>
<artifactId>LearnAndTest</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.10.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.10.1</version>
</dependency>
</dependencies>
</project>