非常に大きなJSONメッセージを返すサーバーがあり、クライアントアプリケーションはこの応答の一部にのみ依存しています。クライアントアプリケーションは、JSONメッセージに「xyz」プロパティが存在するかどうかを確認し、その結果に応じて特定のユースケースを実行する必要があります。
この要件のために、JSONメッセージ全体をオブジェクトに変換することは、私にとっては少し高価に聞こえるので、この質問です。
XMLのような標準のJSONクエリ言語はありますか?はいの場合、Javaでのこのクエリ言語の実装を最もよく知っているものは何ですか。
参考:サーバー側で新しいサービスを変更または追加することはできません。
なぜJavaScriptを使用しないのですか? (結局のところ、JSONはJavaScript Object Notationです)。その後、JSONを解析または操作する必要はありません。
[〜#〜] edit [〜#〜]ご覧ください http://json.org/Java
この要件のために、JSONメッセージ全体をオブジェクトに変換することは、私にとっては少し高価に聞こえるので、この質問です。
そうではありません。オブジェクトの逆シリアル化は安価です(自分でベンチテストします)。外部APIとの通信は、桁違いに高価になります。少し速いかもしれない文字列を直接操作することもできますが、バグのリスクがあり、拡張性が低下し、読みやすさが低下します。高コスト。
「測定、推測しないでください」。はい、オブジェクトのシリアライゼーションとデシリアライゼーションは理論的には高価ですが、アプリケーションのパフォーマンス目標は何ですか?オブジェクトの(非)シリアライゼーションがパフォーマンスを許容できないレベルにプッシュしない場合は、心配しないでください:-)。もちろん、重要なのは、パフォーマンスの境界(2秒でのユーザーへの応答時間など)を把握し、要求/応答サイクルの各部分を測定することです。