Flexjson - JavaオブジェクトをJSONに変換するための軽量ライブラリ
Flexjsonは軽量Javaで開発された軽量なライブラリで、JavaオブジェクトをラインタイムでJSONに変換することができます。
JSON (JavaScript Object Notation)は、軽量のデータ交換フォーマットとして使われるデータ記述言語です。
JSONフォーマットの文字列データをJavaScriptのeval()関数で解釈させ、JavaScriptのコードとして実行することができるのが特徴で、Ajaxなどの分野で広く利用されています。
JSONについて
JSON入門 - JSONの基本的な形式例
JSON入門 - JavaScriptでJSONデータを評価する
DWR+JSONでクライアントとサーバ側間でJSON形式のデータ変換処理
公式サイトでは、次のようなサンプルから説明しています。
Flexjsonを利用すれば、PersonオブジェクトをJSONに簡単に変換できます。
■Javaコード:
■出力するJSONデータ(サンプル):
さらに、シリアライズ時にJSONSerializer.include(...)メソッドでパラメータを指定すれば、phoneNumbers、addressesなどのプロパティまでシリアライズされることができます。
■Javaコード
■出力JSONデータ
詳細は公式サイトまで。
◇ JavaオブジェクトをJSONデータに変換(シリアライズ)
◇ シンプル・洗練されたAPI
◇ オープンソース。Apache License V2.0
sourceforge Flexjsonプロジェクト
JSON (JavaScript Object Notation)は、軽量のデータ交換フォーマットとして使われるデータ記述言語です。
JSONフォーマットの文字列データをJavaScriptのeval()関数で解釈させ、JavaScriptのコードとして実行することができるのが特徴で、Ajaxなどの分野で広く利用されています。
JSONについて
JSON入門 - JSONの基本的な形式例
JSON入門 - JavaScriptでJSONデータを評価する
DWR+JSONでクライアントとサーバ側間でJSON形式のデータ変換処理
公式サイトでは、次のようなサンプルから説明しています。
Flexjsonを利用すれば、PersonオブジェクトをJSONに簡単に変換できます。
■Javaコード:
Person p = ...; //Personオブジェクトp JSONSerializer serializer = new JSONSerializer(); return serializer.serialize(p); //String型、JSONフォーマットデータ
■出力するJSONデータ(サンプル):
{
"class": "Person",
"name": "William Shakespeare",
"birthday": -12802392000000,
"nickname": "Bill"
}
"class": "Person",
"name": "William Shakespeare",
"birthday": -12802392000000,
"nickname": "Bill"
}
さらに、シリアライズ時にJSONSerializer.include(...)メソッドでパラメータを指定すれば、phoneNumbers、addressesなどのプロパティまでシリアライズされることができます。
■Javaコード
return new JSONSerializer().include("phoneNumbers").serialize(p);
■出力JSONデータ
{
"class": "Person",
"name": "William Shakespeare",
"birthday": -12802392000000,
"nickname": "Bill"
"phoneNumbers": [
{
"class": "Phone",
"name": "cell",
"number": "555-123-4567"
},
{
"class": "Phone",
"name": "home",
"number": "555-987-6543"
}
]
}
"class": "Person",
"name": "William Shakespeare",
"birthday": -12802392000000,
"nickname": "Bill"
"phoneNumbers": [
{
"class": "Phone",
"name": "cell",
"number": "555-123-4567"
},
{
"class": "Phone",
"name": "home",
"number": "555-987-6543"
}
]
}
詳細は公式サイトまで。
Flexjsonの機能・特徴
◇ JavaオブジェクトをJSONデータに変換(シリアライズ)
◇ シンプル・洗練されたAPI
◇ オープンソース。Apache License V2.0
sourceforge Flexjsonプロジェクト
