5

JAVA で json を解析する最速の方法は何ですか?

  • Array に組み込まれたライブラリと Object オブジェクトを使用して、デフォルトのオブジェクト グラフを取得する
  • 独自の Java Bean を使用してカスタム オブジェクト グラフを取得する

ありがとう

4

3 に答える 3

5

解析された JSON を Java Bean にマッピングするには、追加の手順が必要になるため、生のインターフェイス (Jackson のストリーミング API など) を使用する方が高速になります。このようにして、必要なものが得られるまで読み取り、解析を停止することもできます。

Jackson Wiki
からの @sikorski への応答:

データ バインディングは、ストリーミング API を基盤となる JSON 読み取り/書き込みシステムとして使用して構築されます。そのため、パフォーマンスが高く [...]、純粋なストリーミング/インクリメンタル処理と比較して追加のオーバーヘッドが発生します。

これはほとんど避けられません。一般的な Jackson パーサーを作成している場合、明らかにカスタム型を使用することはできません。したがって、汎用パーサーで JSON を読み取った後にカスタム型を構築する必要があるため、汎用パーサーの方が高速になります。ただし、このようなオーバーヘッドは非常に小さく、最適化する必要があるものはほとんどないことに注意してください。

于 2013-04-26T07:19:05.100 に答える