Jackson-overview
提供:Dev Guides
ジャクソン-概要
ジャクソンは、JavaオブジェクトをJSONにシリアル化したり、その逆を行うためのシンプルなJavaベースのライブラリです。
特徴
- 使いやすい-jackson APIは、一般的に使用されるユースケースを簡素化するための高レベルのファサードを提供します。
- マッピングを作成する必要はありません。-jackson APIは、シリアル化されるほとんどのオブジェクトにデフォルトのマッピングを提供します。
- パフォーマンス-ジャクソンは静かで高速であり、メモリフットプリントが小さく、大きなオブジェクトのグラフまたはシステムに適しています。
- * Clean JSON。*-jacksonは、読みやすく、クリーンでコンパクトなJSON結果を作成します。
- 依存関係なし-jacksonライブラリは、jdk以外のライブラリを必要としません。
- オープンソース-jacksonライブラリはオープンソースであり、無料で使用できます。
JSONを処理する3つの方法
ジャクソンはJSONを処理する3つの代替方法を提供します
- *ストリーミングAPI *-JSONコンテンツを個別のイベントとして読み書きします。 JsonParserはデータを読み取りますが、JsonGeneratorはデータを書き込みます。 これは3つの中で最も強力なアプローチであり、読み取り/書き込み操作のオーバーヘッドが最も低く、高速です。 XMLのStaxパーサーに類似しています。
- ツリーモデル-JSONドキュメントのメモリ内ツリー表現を準備します。 ObjectMapperは、JsonNodeノードのツリーを構築します。 最も柔軟なアプローチです。 XMLのDOMパーサーに類似しています。
- データバインディング-プロパティアクセサまたはアノテーションを使用して、JSONをPOJO(Plain Old Java Object)との間で変換します。 それは2つのタイプです。
- シンプルなデータバインディング-JSONからJavaマップ、リスト、文字列、数値、ブール値、nullオブジェクトへの変換を行います。
- 完全なデータバインディング-JSONを任意のJAVAタイプとの間で変換します。 + ObjectMapperは、両方のタイプのデータバインディングのJSONを読み書きします。 データバインディングは最も便利な方法であり、XMLのJAXBパーラーに類似しています。