3.4.6. コレクション関連アノテーション
3.4.6.1. コレクション設定の拡張 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
設定可能
- @BatchSize を使用したコレクションのバッチサイズ
- @Where (ターゲットエンティティに適用) または @WhereJoinTable (関係テーブルに適用) を使用する where 句
- @Check を使用する check 句
- @OrderBy を使用した句別の SQL の順序
- @OnDelete(action=OnDeleteAction.CASCADE) を使用した削除カスケード方針
- @Immutable を使用したコレクション変更不可能性: 設定された場合は、コレクションのエレメントが変更しないよう指定されます (場合によっては若干のパフォーマンスの最適化がもたらされます)。
@Persister
を使用したカスタムコレクションパーシスタ (使用された永続化方針): クラスはorg.hibernate.persister.collectionCollectionPersister
を実装する必要があります。
また、ソート比較演算子を宣言することもできます。
@Sort
アノテーションを使用してください。未ソート、自然、またはカスタム比較演算子から比較演算子タイプを指定します。独自の比較演算子実装を使用する場合は、comparator
属性を使用して実装クラスを表現する必要があります。SortedSet
または SortedMap
インターフェースのいずれかを使用する必要があることに注意してください。
詳細については、これらのアノテーションの以前の説明を参照してください。
外部キー制約 (Hibernate により生成される) は、非常に読みにくい名前を持っています。この制約名は
@ForeignKey
を使用して制約名をオーバーライドできます。このアノテーションはもう一方の制約を参照する関係 inverseName
の所有者側に配置する必要があります。