Java 基础教程

Java 面向对象

Java 高级教程

Java 笔记

Java FAQ

java json转实体对象


在 Java 中,将 JSON 转换为实体对象通常使用 JSON 库来完成。以下是几种常见的方式,每种方式都包括所需的步骤、依赖坐标以及示例代码:

使用 Jackson 库

步骤流程:

  1. 添加 Jackson 依赖。
  2. 定义实体类,与 JSON 结构相对应。
  3. 使用 Jackson 提供的 ObjectMapper 将 JSON 字符串转换为实体对象。

依赖坐标(Maven):

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.13.0</version>
</dependency>

依赖坐标(Gradle):

implementation 'com.fasterxml.jackson.core:jackson-databind:2.13.0'

示例代码: 假设有如下 JSON 字符串和对应的实体类:

JSON 字符串:

{
    "id": 1,
    "name": "John Doe",
    "age": 30
}

实体类:

import com.fasterxml.jackson.annotation.JsonProperty;

public class Person {
    private int id;
    private String name;
    private int age;

    // Getters and setters (or use Lombok annotations)

    @JsonProperty("id")
    public int getId() {
        return id;
    }

    @JsonProperty("id")
    public void setId(int id) {
        this.id = id;
    }

    @JsonProperty("name")
    public String getName() {
        return name;
    }

    @JsonProperty("name")
    public void setName(String name) {
        this.name = name;
    }

    @JsonProperty("age")
    public int getAge() {
        return age;
    }

    @JsonProperty("age")
    public void setAge(int age) {
        this.age = age;
    }
}

转换代码:

import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonToEntityExample {
    public static void main(String[] args) throws Exception {
        String jsonString = "{\"id\": 1,\"name\": \"John Doe\",\"age\": 30}";

        ObjectMapper objectMapper = new ObjectMapper();
        Person person = objectMapper.readValue(jsonString, Person.class);

        System.out.println("Person: " + person.getName() + ", Age: " + person.getAge());
    }
}

使用 Gson 库

步骤流程:

  1. 添加 Gson 依赖。
  2. 定义实体类,与 JSON 结构相对应。
  3. 使用 Gson 实例将 JSON 字符串转换为实体对象。

依赖坐标(Maven):

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.9</version>
</dependency>

依赖坐标(Gradle):

implementation 'com.google.code.gson:gson:2.8.9'

示例代码: 与上面的示例相同,只是使用 Gson 替代 Jackson 进行转换。

import com.google.gson.Gson;

public class JsonToEntityExample {
    public static void main(String[] args) {
        String jsonString = "{\"id\": 1,\"name\": \"John Doe\",\"age\": 30}";

        Gson gson = new Gson();
        Person person = gson.fromJson(jsonString, Person.class);

        System.out.println("Person: " + person.getName() + ", Age: " + person.getAge());
    }
}

这两种方式都是常见的将 JSON 转换为实体对象的方法。选择其中一种取决于你的项目需求和个人偏好。

以下是几种常见的实现方式,以及每种方式的详细步骤流程、示例代码以及Maven和Gradle依赖坐标。假设有以下JSON数据表示一个简单的用户 ...
注意:在示例代码中,我将使用一个简单的Java类`Person`来作为要转换为JSON的对象。*步骤流程:添加依赖(Maven):在代码中使 ...
在Java中,将JSON字符串转换为JSON对象可以使用多种不同的方式。示例代码:###方式二:使用Jackson库添加依赖(Maven和G ...
在Java中,将JSON转换为List对象有多种方式,其中常用的方式是使用第三方库,如Jackson、Gson等。###使用Jackson库 ...
在Java中,将JSON转换为Map有多种方式可以实现,下面我将介绍几种常见的方法,并提供相应的代码示例和依赖坐标。1添加依赖Maven依赖 ...