指定されたクラスがOneToOneリレーションシップであることを示し,エンティティクラス間の一つの関連を指定するアノテーションです。
双方向の関係にする場合は,非所有者側に必ずmappedBy属性を指定してください。
適用可能要素は,メソッドとフィールドです。
@OneToOneの属性の一覧を次の表に示します。
属性名 | 任意/必須 | 属性の説明 |
---|---|---|
targetEntity | 任意 | 被所有者側のエンティティクラスを指定する属性です。 |
cascade | 任意 | カスケード対象となるオペレーションを指定する属性です。 |
fetch | 任意 | フェッチ戦略の指定値を指定する属性です。 |
optional | 任意 | すべての非プリミティブ型のフィールドおよびプロパティの値にnull値を設定できるかどうかを指定する属性です。 |
mappedBy | 任意 | 被所有者側のエンティティクラスの要素に付与し,所有者側のエンティティクラスで関係を保持しているフィールド名を指定する属性です。 |
Cosminexus JPAプロバイダで対応する属性の詳細を次に示します。