2011-08-30 2 views
11

Jerseyフレームワークでは、JSONのアンマーシャリング/マーシャリング用のJacksonJettisonライブラリが使用されます。 AFAIK、JettisonはJSONとXML(マッピングされた表記法などの異なる機構サポート)をマッピングするためのもので、JacksonはJSON生成/解析用です(Jerseyもこれを使用しています)。ジャージーでのJackson&Jettisonの使用

ジャージーは、これらの2つの機能を同じJSON生成/解析機能で使用していますか?

私はJSON形式をサポートしたいだけです。私の最初の考えでは、依存関係のいずれかを取り除くことができ、JacksoneがJSON生成/解析のためのより自然な選択と思われるため、Jettisonを削除できると思う。

答えて

7

Jerseyは、すべてのJSON処理でどちらか一方を使用しますが、両方を使用することはありません。 私が知る限り、推奨事項はジャクソンを使用することです。 Jettisonのサポートは古くなり、Jacksonが利用可能になる前に実装されました。 Jettisonは互換性の理由からまだサポートされていますが、一部のコードが正確な構造に依存しない限り(まっすぐ進むマッピングとは異なります)、それを使用する利点はほとんどありません。

+0

ありがとうございました。しかし、私は定期的/直進マッピングを使用していますが、私は依存性(私はMavenを使っています)としてJettisonを見ていますか? – manikanta

+0

ええ、何か他のものが必要な場合(ランタイム中か、まさにジャージーのようにコンパイルのために)、それを含める必要があります。しかし、それが使用されるかどうかは、ジャージーで構成可能であり、それを含むことに害はない。 – StaxMan

+6

私は「それを含めることに害はありません」という言葉には同意しません。重要なことに何が使われているかを知る。 Mavenは開発者を怠惰にさせ、プロジェクトが肥大化しています。 –

1

私は同意すると、ジャクソンまたはgoogleからGSONを使用してください。 Jettisonには限界があり、パフォーマンスも低下します。

関連する問題