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

JavaのオブジェクトモデルでJSON配列を作成する方法

javax.json.JsonArrayインターフェースはイミュータブル(変更不可)なJSON配列を表現し、配列内の値に対する変更不可能なリストビューを提供します。JsonArrayオブジェクトは、入力ソースからJSONデータを読み込むことでも作成できますが、javax.json.Jsonクラスが提供する静的メソッドcreateArrayBuilder()を使って生成することも可能です。プログラムを実行するには、javax.jsonパッケージ(javax.json-api.jarファイルをダウンロードしてクラスパスに追加)をインポートする必要があります。

構文

public static JsonArrayBuilder createArrayBuilder()

コード例

以下の例では、まずJsonObjectBuilderを使って名前・役職・会社名といった基本情報を持つJSONオブジェクトを組み立てます。続いてcreateArrayBuilder()でメールアドレスと電話番号を要素に持つJSON配列を生成し、それを「contactInfo」というキーとして親オブジェクトに追加しています。最後にJsonWriter経由で完成したJSONを出力します。

import java.io.*;
import javax.json.*;
import javax.json.JsonObjectBuilder;

public class JsonArrayTest {
   public static void main(String[] args) {
      JsonObjectBuilder builder = Json.createObjectBuilder();
      builder.add("Name", "Raja Ramesh");
      builder.add("Designation", "Java Developer");
      builder.add("Company", "TutorialsPoint");
      JsonArray contactInfo = Json.createArrayBuilder()
         .add(Json.createObjectBuilder().add("email", "raja@gmail.com"))
         .add(Json.createObjectBuilder().add("mobile", "9959984000"))
         .build();
      builder.add("contactInfo", contactInfo);
      JsonObject data = builder.build();
      StringWriter sw = new StringWriter();
      JsonWriter jw = Json.createWriter(sw);
      jw.writeObject(data);
      jw.close();
      System.out.println(sw.toString());
   }
}

実行結果

{"Name":"Raja Ramesh","Designation":"Java Developer","Company":"TutorialsPoint",
"contactInfo":[{"email":"raja@gmail.com"},{"mobile":"9959984000"}]}

ポイント解説

  • Json.createObjectBuilder():JSONオブジェクトを段階的に組み立てるためのJsonObjectBuilderを返します。
  • Json.createArrayBuilder():JSON配列を構築するためのJsonArrayBuilderを返します。メソッドチェーンで複数の要素を追加できます。
  • build():ビルダーに蓄積したデータから最終的なJsonObjectJsonArrayを生成します。
  • Json.createWriter():JSONデータをWriterへ書き出すためのJsonWriterを生成します。使用後は必ずclose()を呼び出しましょう。
  1. JavaでJSON配列を作成する方法をわかりやすく解説

    JSON配列とは、角括弧で囲まれた値の順序付きコレクションのことです。具体的には「[」で始まり「]」で終わり、配列内の各値はカンマ(,)で区切られます。JSON配列のサンプル{ books: [Java, JavaFX, Hbase, Cassandra, WebGL, JOGL] }json-simpleは、JSONオブジェクトを処理するための軽量ライブラリです。このライブラリを使えば、JavaプログラムからJSONドキュメントの内容を読み取ったり、書き込んだりすることができます。json-simpleのMaven依存関係json-simpleライブラリを使用するには、まずpom.x

  2. JavaでJSONファイルを作成する方法をわかりやすく解説

    JSON(JavaScript Object Notation)は、人間が読みやすい形式でデータを交換するために設計された、軽量なテキストベースのオープン標準フォーマットです。JSONの記法は、C、C++、Java、Python、Perlなど、多くのプログラミング言語に精通したプログラマーにとって馴染み深いものとなっています。 JSONドキュメントのサンプル 以下は、書籍情報を格納した典型的なJSONドキュメントの例です。 { book: [ { id: 01, language: Java, ed