@Target(value={METHOD,FIELD})
@Retention(value=RUNTIME)
public @interface MapKeyColumn
name
要素が指定されていない場合、デフォルトでは次のものが連結されます。:参照元のリレーションシップのフィールドまたはプロパティの名前 + "_" + "キー"
Example: @Entity public class Item { @Id int id; ... @ElementCollection @MapKeyColumn(name="IMAGE_NAME") @Column(name="IMAGE_FILENAME") @CollectionTable(name="IMAGE_MAPPING") Map<String, String> images; // map from image name to filename ... }
修飾子とタイプ | 任意要素と説明 |
---|---|
java.lang.String |
columnDefinition
(オプション) カラムのDDLを生成するときに使用されるSQLフラグメント。
|
boolean |
insertable
(オプション) 永続化プロバイダによって生成されたSQL INSERTステートメントにカラムが含まれるかどうか。
|
int |
length
(オプション) カラムの長さ。
|
java.lang.String |
name
(オプション) マップキーのカラムの名前。
|
boolean |
nullable
(オプション) データベースのカラムがNULLを許容するかどうか。
|
int |
precision
(オプション) 10進数(正確な数値)のカラムの精度。
|
int |
scale
(オプション) 10進数(正確な数値)のカラムの位取り。
|
java.lang.String |
table
(オプション) このカラムが含まれるテーブルの名前。
|
boolean |
unique
(オプション) このプロパティがユニークキーかどうか。
|
boolean |
updatable
(オプション) 永続化プロバイダによって生成されたSQL UPDATEステートメントにカラムが含まれるかどうか。
|
public abstract java.lang.String name
デフォルトでは次のものが連結されます。:参照元のリレーションシップのフィールドまたはプロパティの名前 + "_" + "キー"
public abstract boolean unique
UniqueConstraint
アノテーションのショートカットであり、
ユニークキー制約が単一のフィールドだけである場合に便利です。
この制約は主キーのマッピングとテーブルレベルで指定された制約に伴う制約に加えて適用されます。public abstract boolean insertable
public abstract boolean updatable
public abstract java.lang.String columnDefinition
public abstract java.lang.String table
デフォルト:マップキーが要素コレクションの場合はマップ値のコレクションテーブルの名前。 結合テーブルを使用してマップキーがOneToManyまたはManyToManyエンティティのリレーションシップにある場合はマップの結合テーブルの名前。 外部キーマッピング戦略を使用してマップキーがOneToManyエンティティのリレーションシップ用である場合はマップの値のエンティティのプライマリテーブルの名前。
Translated by @megascus.