2009-09-01 11 views
24

10Mbを超えるファイルのパフォーマンスを考慮して、どの方が優れているか(JAXBまたはApache XMLBeans)を教えてください。JAXBとApache XMLBeans

+1

**開発者向けのメモとして:**現在、XMLBeansプロジェクトは正式に廃止され、アクティブな開発は中止されています。 Apache XMLBeans [ホームページ](https://xmlbeans.apache.org/)(引用)の上にあるメッセージに注意してください:_ "2014/05/23 - Apache XMLBeansは**廃止されました**。詳細については、[Apache Attic](http://attic.apache.org/projects/xmlbeans.html)を参照してください。_ – informatik01

答えて

18

Apache XMLBeansの方がパフォーマンスが優れているように見えても、サードパーティのツールでアプリケーションのサイズを増やしたくないので、通常はJAXBを選択します。

Apache XMLBeansを使用すると、約2MBの小さなパッケージが必要になります。学習しやすく、文書化されている可能性があります。 XSDの仕様と名前空間を完全にサポートし、XMLスキーマ定義(XSD)を介してのみマッピングします。また、廃止予定のAPIを使用しているようです。

+0

最終アプリケーションのサイズが非常に重要になるようにWebstartアプリケーションを作成しようとしていますパフォーマンスの差がそれほど大きくないので、おそらく私の決定の中で最も重い要素です。 – Simon

1

はbrunoに同意します。理由のためにJAXBがJavaにバンドルされています

+4

いいえ、xml-java-object-mapping-tool宝くじを受賞しました。 – Nico

+0

「抽選」は品質による選択のようには聞こえませんが、運については... – Henning

+9

JAXBはツールではなく仕様://jcp.org/en/jsr/detail?id = 222)。 Metro JAXB impl(https://jaxb.dev.java.net/)はJava SE 6に含まれています。MOXy(http://www.eclipse.org/eclipselink/moxy.php)などの他のJAXBインプがあります。 JaxMe(http://ws.apache.org/jaxme/)を参照してください。 –

4

XMLインスタンスのドキュメントからXMLスキーマを生成できる便利なツール「inst2xsd」が付属しているため、XMLBeansを使用することをお勧めします。 JAXBはこれを行うことができません。

http://xmlbeans.apache.org/docs/2.0.0/guide/tools.html#inst2xsd

+5

JAXB 2はXMLスキーマを生成できます。http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/javax/xml/bind/JAXBContextを参照してください。 html#generateSchema(javax.xml.bind.SchemaOutputResolver) –

+3

JAXB 2はxmlからスキーマを生成できません。 schemagenツールは、javaクラスからのみスキーマを生成します。 – Kamran

+0

http://stackoverflow.com/questions/7212064/is-it-possible-to-generate-a-xsd-from-a-jaxb-annotated-class :) – everlasto

7

XmlBeansをの建築家を参照してくださいJAXBが確立された標準だったにも関わらず、彼はのXMLBeansの構築に選んだ理由について書きました。 blog、具体的にはproblems with jaxbをご覧ください。最も魅力的なのはタイプ置換です。

+14

JAXB 1(JSR-31)を参考にした '' jaxb''ブログ記事の問題点があります。 JAXB 2(JSR-222)は飛躍的に向上しています。これは、JAXB 2専門家グループのメンバーであったDavid Bauの貢献によるものです。 –

関連する問題