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():ビルダーに蓄積したデータから最終的な
JsonObjectやJsonArrayを生成します。 - Json.createWriter():JSONデータを
Writerへ書き出すためのJsonWriterを生成します。使用後は必ずclose()を呼び出しましょう。
-
JavaでJSON配列を作成する方法をわかりやすく解説
JSON配列とは、角括弧で囲まれた値の順序付きコレクションのことです。具体的には「[」で始まり「]」で終わり、配列内の各値はカンマ(,)で区切られます。JSON配列のサンプル{ books: [Java, JavaFX, Hbase, Cassandra, WebGL, JOGL] }json-simpleは、JSONオブジェクトを処理するための軽量ライブラリです。このライブラリを使えば、JavaプログラムからJSONドキュメントの内容を読み取ったり、書き込んだりすることができます。json-simpleのMaven依存関係json-simpleライブラリを使用するには、まずpom.x
-
JavaでJSONファイルを作成する方法をわかりやすく解説
JSON(JavaScript Object Notation)は、人間が読みやすい形式でデータを交換するために設計された、軽量なテキストベースのオープン標準フォーマットです。JSONの記法は、C、C++、Java、Python、Perlなど、多くのプログラミング言語に精通したプログラマーにとって馴染み深いものとなっています。 JSONドキュメントのサンプル 以下は、書籍情報を格納した典型的なJSONドキュメントの例です。 { book: [ { id: 01, language: Java, ed