ヘッダーをスキップ
Oracle® Fusion Middleware Oracle TopLinkによるJAXBアプリケーションの開発
12c (12.1.2)
E48003-01
  目次へ移動
目次

前
 
次
 

1 概要

JAXB (Java Architecture for XML Binding - JSR 222)は、JavaのXMLバインディングの標準です。JAXBではXMLスキーマのコンセプトが100%カバーされており、EclipseLinkではJAXBの実装が多くの拡張機能とともに提供されています。JAXB仕様の詳細は、http://jcp.org/en/jsr/detail?id=222を参照してください。

Oracle TopLinkには、EclipseLink、およびそのJAXBプロバイダであるEclipseLink MOXyが含まれています。

開発者は、EclipseLink MOXyコンポーネントを使用することによって、XMLスキーマおよびJSONドキュメントにJavaクラスを効率的にバインドできます。MOXyではJAXBが実装されるので、開発者は、注釈でマッピング情報を指定でき、マッピングをXML形式およびJSON形式で保存できます

この章には、次の項目が含まれます。

1.1 EclipseLink MOXyについて

EclipseLink MOXyをJAXBプロバイダとして使用する際には、既存のオブジェクト・モデルをXMLまたはJSONに変換するためのメタデータは不要です。(注釈、XMLまたはJSONを使用して)メタデータを提供できるのは、XMLまたはJSONの表現の微調整が必要なときのみです。

EclipseLink MOXyには、Javaクラス・モデルでスキーマをミラーリングしなくても、複雑なXML構造を処理できる高度なマッピングが多数含まれています。

図1-1 JAXBのサンプル・アーキテクチャ

図1-1についてはこの前後の文章で説明します。

1.2 object-xmlのインピーダンス・ミスマッチの解決

XMLはデータの交換に広く使用される形式ですが、多くのアプリケーションでは、プログラム表現として、XMLよりオブジェクトのほうが優先的に使用されます。オブジェクト・レベルで操作するには、XMLデータをオブジェクト形式に変換する必要があります。XMLとオブジェクトのミスマッチは、オブジェクトとobject-xmlのインピーダンス・ミスマッチと呼ばれます。

JAXBでは、ドメインのようなオブジェクトを使用することによって、XMLデータと対話できます。DOMオブジェクトとは異なり、JAXBコンテンツ・モデルは、XMLスキーマに基づいてXML文書を洞察します。たとえば、顧客情報を含むXML文書がXMLスキーマで定義されている場合は、コンテンツ・モデルには、CustomerAddressPhoneNumberなどのオブジェクトが含まれます。XMLスキーマ内の各タイプには、対応するJavaクラスが割り当てられます。

(TopLinkに含まれている)EclipseLink MOXyを使用することによって、XMLスキーマまたはJSONドキュメントにJavaクラスを効率的にバインドできます。MOXyでは、注釈でマッピング情報を指定し、マッピングをXMLまたはJSONで保存できるようにすることによって、JAXBが実装されます。これらのマッピングを使用すれば、Javaクラス・モデルでスキーマをミラーリングしなくても、複雑なXML構造を管理できます。

1.3 このドキュメントについて

Oracle TopLinkには、その永続性プロバイダとしてEclipseLinkが含まれており、これは、Java Persistence (JPA)仕様のリファレンス実装です。また、拡張機能も数多く含まれています。

1.3.1 その他のリソース

詳細は、次を参照してください: