Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

json转java实体类

作者:佳凝皓月   发布日期:2025-10-07   浏览:15

// 定义一个简单的Java实体类,用于演示JSON转Java实体类的过程

import com.fasterxml.jackson.annotation.JsonProperty;

public class User {

    // 定义类的属性
    @JsonProperty("id")
    private int id;

    @JsonProperty("name")
    private String name;

    @JsonProperty("email")
    private String email;

    // 无参构造函数
    public User() {}

    // 有参构造函数
    public User(int id, String name, String email) {
        this.id = id;
        this.name = name;
        this.email = email;
    }

    // Getter 和 Setter 方法
    public int getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    // 重写toString方法,方便打印对象信息
    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", email='" + email + '\'' +
                '}';
    }
}

// 使用Jackson库将JSON字符串转换为Java实体类对象的示例代码

import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonToJavaExample {

    public static void main(String[] args) {
        // 示例JSON字符串
        String jsonString = "{\"id\":1,\"name\":\"John\",\"email\":\"john@example.com\"}";

        try {
            // 创建ObjectMapper实例
            ObjectMapper objectMapper = new ObjectMapper();

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

            // 打印转换后的User对象
            System.out.println(user);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

解释说明:

  1. 实体类 User:定义了一个简单的Java类,包含三个属性:idnameemail。使用了 @JsonProperty 注解来确保 JSON 字段名与 Java 属性名一致。
  2. 构造函数:提供了无参和有参构造函数,以便灵活创建对象。
  3. Getter 和 Setter 方法:用于访问和修改类的私有属性。
  4. toString() 方法:重写了 toString() 方法,方便打印对象信息。
  5. JSON 转换:使用 Jackson 库中的 ObjectMapper 类将 JSON 字符串转换为 Java 实体类对象。通过 readValue() 方法实现转换,并最终打印出转换后的对象。

如果你没有安装 Jackson 库,可以通过 Maven 或 Gradle 添加依赖:

  • 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'

上一篇:java是面向对象的吗

下一篇:java append

大家都在看

java连接数据库的代码

java djl

ubuntu 卸载java

java读取excel中的图片

java新建

java sort用法

java collections.sort

java file类的方法

java发送qq邮件

java 判断

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站