JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前端和后端之间的数据传输。在 Java 中,有多种库和工具可以用于处理 JSON 数据。以下是一个简单的 Java JSON 教程,介绍如何在 Java 中使用 JSON。

1. JSON 数据格式:

JSON 数据由键值对组成,键值对之间用逗号分隔,整个对象用花括号 {} 包围。数组用方括号 [] 包围。例如:
{
  "name": "John Doe",
  "age": 30,
  "city": "New York",
  "skills": ["Java", "JavaScript", "Python"]
}

2. Jackson 库:

Jackson 是一个流行的 JSON 处理库,可以用于在 Java 对象和 JSON 数据之间进行转换。

添加 Jackson 依赖:
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.x.x</version> <!-- 使用最新版本 -->
</dependency>

3. Java 对象转 JSON:

使用 Jackson 的 ObjectMapper 类可以将 Java 对象转换为 JSON 数据。
import com.fasterxml.jackson.databind.ObjectMapper;

public class ObjectToJson {
    public static void main(String[] args) {
        try {
            // 创建一个对象
            Person person = new Person("John Doe", 30, "New York", Arrays.asList("Java", "JavaScript", "Python"));

            // 创建 ObjectMapper 对象
            ObjectMapper objectMapper = new ObjectMapper();

            // 将对象转换为 JSON 字符串
            String jsonString = objectMapper.writeValueAsString(person);

            // 打印 JSON 字符串
            System.out.println(jsonString);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

4. JSON 转 Java 对象:

同样使用 ObjectMapper,可以将 JSON 数据转换为 Java 对象。
import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonToObject {
    public static void main(String[] args) {
        try {
            // JSON 字符串
            String jsonString = "{\"name\":\"John Doe\",\"age\":30,\"city\":\"New York\",\"skills\":[\"Java\",\"JavaScript\",\"Python\"]}";

            // 创建 ObjectMapper 对象
            ObjectMapper objectMapper = new ObjectMapper();

            // 将 JSON 字符串转换为对象
            Person person = objectMapper.readValue(jsonString, Person.class);

            // 打印对象
            System.out.println(person);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

5. 处理复杂 JSON 结构:

如果 JSON 数据包含嵌套的对象或数组,Jackson 也能够很容易地处理。

6. 其他 JSON 处理库:

除了 Jackson,还有其他一些流行的 Java JSON 处理库,如 Gson、JSON.simple 等,它们各自有不同的优点和使用方式。

以上是一个简单的 Java JSON 教程,介绍了使用 Jackson 库进行 JSON 数据的处理。


转载请注明出处:http://www.zyzy.cn/article/detail/459/Java