ヘッダーをスキップ

ダイレクト・コレクション・マッピングの使用

ダイレクト・コレクション・マッピングは、TopLink対応ではないJavaオブジェクトのコレクションを格納します。ダイレクト・コレクションで格納されるオブジェクト・タイプは、通常はStringなどのJava型です。

また、ダイレクト・コレクション・マッピングを使用してString以外のオブジェクトのコレクションをマップすることもできます。たとえば、IntegerまたはDateインスタンスのコレクションを含む属性を持つことができます。コレクションに格納されるインスタンスは、データベースでサポートされており、Javaに対応するラッパー・クラスが存在する、すべてのタイプです。

Javaベクターはオブジェクトのみを保持するため、intなどのプリミティブ・データ・タイプはサポートされていません。

図5-18には、2つのフィールドを持つ別の表に格納されるダイレクト・コレクションが示されています。1番目のフィールドは参照キー・フィールドで、コレクションを所有するインスタンスの主キーへの参照が含まれています。2番目のフィールドにはコレクションのオブジェクトが含まれており、直接フィールドと呼ばれます。コレクションの各オブジェクトについて表内で1つのレコードがあります。

図5-18 ダイレクト・コレクション・マッピング

この図はダイレクト・コレクション・マッピングを示しています。


注意: responsibilities属性はVector型です。JDK 1.2の使用時は、コレクション属性の宣言にCollectionインタフェース(またはCollectionインタフェースを実装するクラス)を使用することが可能です。詳細は、「コンテナ・ポリシーの使用」を参照してください。

キー値がないためダイレクト・コレクションに対するマップはサポートされていません。


関連トピック

TopLinkマッピング・タイプについて
リレーションシップ・マッピングの使用

Javaオブジェクトのダイレクト・コレクション・マッピングの作成