JavaにおけるJSONの直列化および逆直列化の取り扱い方法は?

Javaでは、JSONのシリアル化とデシリアル化を処理するためにJacksonライブラリを使用することができます。以下は簡単な例です:

最初に、MavenまたはGradleにJacksonの依存関係を追加する必要があります。

メイヴン:

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

Gradle: Gradle:

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

その後、JavaオブジェクトをJSON文字列にシリアライズするために、以下のコードを使用することができます:

import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonSerializationExample {
    public static void main(String[] args) throws Exception {
        // 创建一个Java对象
        Person person = new Person("John", 25);

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

        // 将Java对象序列化为JSON字符串
        String jsonString = objectMapper.writeValueAsString(person);

        // 打印JSON字符串
        System.out.println(jsonString);
    }
}

上記のコードは、次のJSON文字列を出力します:

{"name":"John","age":25}

次に、JSON文字列をJavaオブジェクトに逆シリアル化するために以下のコードを使用できます:

import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonDeserializationExample {
    public static void main(String[] args) throws Exception {
        // JSON字符串
        String jsonString = "{\"name\":\"John\",\"age\":25}";

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

        // 将JSON字符串反序列化为Java对象
        Person person = objectMapper.readValue(jsonString, Person.class);

        // 打印Java对象的属性
        System.out.println(person.getName());
        System.out.println(person.getAge());
    }
}

The code above will generate the following output:
上記のコードは以下の出力を生成します。

John
25

反転シリアル化を行う際には、対象となるJavaクラスの型(例:Person.class)を指定する必要があることに注意してください。

bannerAds