Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaのオブジェクトモデルを使用してJsonWriterでJSONオブジェクトをシリアル化するにはどうすればよいですか?


javax.json JsonWriter インターフェイスは、JSONオブジェクトまたは配列構造を出力に書き込むことができます ソース 。クラスjavax.json.JsonWriterFactory JsonWriterを作成するためのメソッドが含まれています インスタンス。ファクトリインスタンスを使用して、同じ構成で複数のライターインスタンスを作成できます。 静的を使用して、出力ソースからライターを作成できます メソッドcreateWriter() javax.json.Json クラス。

構文
public static JsonWriter createWriter(Writer writer)

以下の例では、JsonWriterインターフェースを使用してJSONオブジェクトをシリアル化できます。

import java.io.StringWriter;
import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonObjectBuilder;
import javax.json.JsonWriter;
public class JsonWriterTest {
   public static void main(String[] args) {
      JsonObject jsonObj = Json.createObjectBuilder()
                 .add("name", "Adithya")
                 .add("age", 25)
                 .add("salary", 40000)
                 .add("address",
                      Json.createObjectBuilder().add("street", "Madhapur")
                                                .add("city", "Hyderabad")
                                                .add("zipCode", "500084")
                                                .build()
                      )
                 .add("phoneNumber",
                      Json.createArrayBuilder().add("9959984000")
                                               .add("7702144400")
                                               .build()
                     )
                 .build();

      StringWriter stringWriter = new StringWriter();
      JsonWriter writer = Json.createWriter(stringWriter);
      writer.writeObject(jsonObj);
      writer.close();
      System.out.println(stringWriter.getBuffer().toString());
   }
}
出力
{"name":"Adithya","age":25,"salary":40000,"address":{"street":"Madhapur","city":
"Hyderabad","zipCode":"500084"},"phoneNumber":["9959984000","7702144400"]}

  1. JavaでJSONオブジェクトをデコードするにはどうすればよいですか?

    JSON 軽量です 、テキストベース および言語に依存しない データ交換フォーマット。 JSONは、オブジェクトのような2つの構造化されたタイプを表すことができます およびアレイ 。 JSONObjectを使用してJSONオブジェクトをデコードできます およびJSONArray json.simple APIから 。 JSONObject java.util.Mapとして機能します 一方、 JSONArray java.util.Listとして機能します 。 以下の例では、JSONオブジェクトをデコードできます。 例 import org.json.simple.*; impo

  2. JavaオブジェクトをJSONに変換する方法

    このチュートリアルでは、JacksonとGsonの2つのライブラリを使用してJavaオブジェクトをJSONに変換する方法を示します。 標準のPOJOであるPersonクラスを使用します。人物オブジェクトを作成したら、別のライブラリを使用してそれをJSONに変換できます。 Person.java import java.util.List; import java.util.Map; public class Person { String name; Integer age; List<String> hobbies; Map<Str