Java JSON字符串转JSON对象
在Java中,将JSON字符串转换为JSON对象有多种方式,以下是几种常用的方法:

使用Gson库(Google)
首先需要添加Gson依赖:
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.10.1</version>
</dependency>
转换示例:
import com.google.gson.Gson;
import com.google.gson.JsonObject;
public class JsonExample {
public static void main(String[] args) {
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
Gson gson = new Gson();
JsonObject jsonObject = gson.fromJson(jsonString, JsonObject.class);
System.out.println(jsonObject.get("name")); // 输出: "John"
System.out.println(jsonObject.get("age")); // 输出: 30
}
}
使用Jackson库
首先需要添加Jackson依赖:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.15.2</version>
</dependency>
转换示例:

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonExample {
public static void main(String[] args) throws Exception {
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
ObjectMapper objectMapper = new ObjectMapper();
JsonNode jsonNode = objectMapper.readTree(jsonString);
System.out.println(jsonNode.get("name")); // 输出: "John"
System.out.println(jsonNode.get("age")); // 输出: 30
}
}
使用org.json库
首先需要添加org.json依赖:
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20251013</version>
</dependency>
转换示例:
import org.json.JSONObject;
public class JsonExample {
public static void main(String[] args) {
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
JSONObject jsonObject = new JSONObject(jsonString);
System.out.println(jsonObject.getString("name")); // 输出: John
System.out.println(jsonObject.getInt("age")); // 输出: 30
}
}
使用Java内置库(Java 9+)
Java 9及以上版本提供了内置的JSON处理API:
import javax.json.JsonObject;
import javax.json.JsonReader;
public class JsonExample {
public static void main(String[] args) {
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
try (JsonReader reader = Json.createReader(new StringReader(jsonString))) {
JsonObject jsonObject = reader.readObject();
System.out.println(jsonObject.getString("name")); // 输出: John
System.out.println(jsonObject.getInt("age")); // 输出: 30
}
}
}
注意事项
- 确保JSON字符串格式正确,否则会抛出异常
- 根据你的项目需求选择合适的库(Gson、Jackson等)
- 处理JSON时要注意空值和异常情况
- 对于复杂的JSON结构,可能需要创建对应的Java类进行映射
方法都可以将JSON字符串转换为JSON对象,选择哪种取决于你的具体需求和项目环境。

