【JAXB】JAXB (ジャックスビー) ~知識編~

JAXB

初めに

* JAXB はXML Schema によるスキーマ定義をJava のクラスにマッピングすることによって
  アプリケーションの開発効率を向上させるためのツール

 + XML文書とJavaオブジェクトの双方向のマッピング手段を提供するのがJAXBの役割
 + アンマーシャル:スキーマ定義を読み込んで、それを扱うJavaクラスファイルを自動生成。
  - データバインディング:何らかのフォーマットで定義されたデータ(XMLなど)を
    Javaのオブジェクトモデル(クラス)に変換すること
  - マーシャル:生成したJavaクラスを編集して、XML文書作成。
http://www.utj.co.jp/xml/dev/java/img/dxjava_8_3.gif

技術メモ

* JAXB の中核をなす技術には、「スキーマコンパイラ」と「マーシャリングフレームワーク」の2 つがあります。
 + スキーマコンパイラとは、スキーマ文書を読み込み、そのスキーマに従ったXML 文書を扱うための
   Java クラスを生成するツールです
   + XML 文書を読み込み、Java のオブジェクトを生成する
   + 子要素や属性を取得する
   + 子要素や属性を追加/変更する
   + Java のオブジェクトからXML 文書を生成する
   + スキーマに基づいて構造やデータ型の妥当性をチェック
    - ファイルを読み込むときに自動的に行われる
    - 検証用メソッドを明示的に呼び出すことによって任意の時点で実行できる。
http://www.utj.co.jp/xml/dev/java/img/dxjava_8_2.gif

引用:http://bizex.goo.ne.jp/tool/it/9_96/3581/