JAXBを使おう - サンプルから学ぶXML文書の読み書き
2009/02/09 21:22Update
XML文書を扱うためのJAXBアーキテクチャの使い方(XMLスキーマの作成から、XMLスキーマからJavaソースの自動生成、JAXBでXMLの読み込みなど)について解説します。
JAXB概要、利用手順、XML文書の用意
XMLスキーマの作成
XMLスキーマからJavaソースの自動生成
JAXBでXMLの読み書きXML文書からJavaオブジェクトにマッピングする(XMLの読み込み)ために、Apache Commons Digesterというライブラリがあります。
――――――――――――――――――――――――――――――――――――
Apache Commons Digesterを使おう - XML文書をJavaオブジェクトに(サンプル)
――――――――――――――――――――――――――――――――――――
Digesterは結構軽量なライブラリですが、XMLからJavaオブジェクトへ一方的なマッピングしかできません、すなわち、JavaオブジェクトからXMLに出力したい場合、Digesterにはできません。
そこで、JAXBというJava標準アーキテクチャがあります。
本文は、サンプルからJAXBの使い方を紹介したいと思います。
JAXB - XMLバインディングのためのJavaアーキテクチャ
■JAXBのライブラリ
JAXBを利用するのに、以下のライブラリが必要となります。
* activation.jar
* jaxb-api.jar
* jaxb-impl.jar
* jaxb-xjc.jar
https://jaxb.dev.java.net/
からダウンロードできます。■JAXBの利用手順
1)XML文書
2)XMLスキーマの作成(Javaソースを生成するため)
3)XMLスキーマからJavaソースの生成(JAXBが提供するツールより)
4)XML⇔Javaオブジェクト(読み書き)
1)XML文書
たとえば、Orders.xmlという処理したいXMLがあります。
Orders.xml<orders> <order seq="0001" date="2007-06-12"> <customer name="C1" /> <goods> <item id="01" name="book" /> <item id="02" name="CD" /> </goods> </order> <order seq="0002" date="2007-06-12"> <customer name="C2" /> <goods> <item id="05" name="Note" /> <item id="06" name="Pen" /> </goods> </order> </orders>
解説:
order要素:オーダーリスト。複数のオーダーが含まれると想定します。
order要素:オーダー。一つのオーダーを表します。
customer:顧客。
goods:商品リスト。何を注文したかを表します。顧客は一度に複数の商品(item)を注文できます。
item:商品。
Sponsored Link
- Relative Articles
- Java開発及び実行環境の構築 | Linux篇 - (2008/08/31 20:34)
- Java開発及び実行環境の構築 | Windows篇 - (2008/08/31 21:18)
- 5分でJava Hello World! - (2008/08/31 22:13)
- Java言語の制御構文 - 条件分岐if/else/else if - (2008/10/01 21:30)
- Java言語の繰り返し制御構文 - for文 - (2008/10/03 18:22)
- Java言語の繰り返し制御構文 - do ... while文 - (2008/10/03 21:23)
- Java言語の繰り返し制御構文 - while文 - (2008/10/03 21:32)
- Java言語の基礎 - javacコマンドによるコンパイル - (2008/10/10 17:58)
- Java アクセス修飾子概要 - (2008/10/29 18:31)
- Javaアノテーション機能 概要 - (2009/02/12 13:06)