2011-01-27 24 views
2

XMLをJavaにバインドするのにあなたは何を使用していますか?よりよい選択は何ですか?マーシャリング/アンマーシャリングでスピードが必要です。私は20MのXMLファイルを持っています。私はxml-to-java最速のフレームワークが必要です。代替xmlバインディング(Java)

+1

[Java XML Binding]の複製が可能です。(http://stackoverflow.com/questions/205749/java-xml-binding) –

+0

http://onjava.com/pub/a/onjava/2007/09/07 /schema-less-java-xml-data-binding-with-vtd-xml.html –

+0

@ vtd-xml-author - この記事では、JAXBとCastorにXMLスキーマが必要であると間違って記載されています。彼らはXMLスキーマからオブジェクトモデルを生成する能力を持っていますが、オブジェクトで始まり、スキーマなしでXMLにマップすることもできます。 –

答えて

2

JAXBが明らかです。それはかなりシンプルで分かりやすく、速く、Java6に組み込まれています。

+1

また、JAXBの複数の実装があります:Metro(リファレンス実装)、EclipseLink MOXy、Apache JaxMeなど –

+0

@Blaise:確かに。ただし、サードパーティのバンドルを使用すると、利便性が低下します。 – skaffman

+0

実装間で選択する機能は、開発者をベンダーのロックから保護します。また、個々の実装では、MOXyのXPathベースのマッピングなどの拡張機能も提供されます。http://bdoughan.blogspot.com/2010/09/xpath-based-mapping-geocode-example .html –

1

XStreamのは本当に使いやすいですし、私はそれが非常に高速であることが判明:バイトコードを変更

http://x-stream.github.io/tutorial.html

+1

チェックアウト:http://bdoughan.blogspot.com/2010/10/how-does-jaxb-compare-to-xstream.html –

+0

面白い、面白い記事Blaise。私は将来的なニーズに対してJAXBを確かに考えています。あなたは、この出力だけでなく、解析側もカバーしていますか? – Brian

+0

次の記事は、JAXBでXMLを読む方法を示しています。http://bdoughan.blogspot.com/2010/09/processing-atom-feeds-with-jaxb.html –

0

フレームワーク、jibxのように、おそらくfastetソリューションです。しかし、彼らは面倒ではありません。 IDEに特別なプラグインが必要なことがあります。これは、IDEがjibxの機能を理解できるようにするためです。

速度が唯一の要因でない場合、私はBStreamが提案したようにXStreamに行きます。それは本当に使いやすいです。

0

私はJIBXをXMLバインディングに使用しています。私はそれに満足しています。また、実行時に問題に直面しないようにビルド時にバインド設定を与えることができるように、mavenプラグインもあります。そのスピードに関しては、JAXBの後に2番目に来ます。