javax.persistence
Тип аннотации MapKeyJoinColumn


@Target(value={METHOD,FIELD})
@Retention(value=RUNTIME)
public @interface MapKeyJoinColumn

Определяет отображение на объект, который является ключом карты. Ключевой объединяющий столбец карты находится в таблице набора, объединяющей таблице, или таблице целевого объекта, который используется, чтобы представить карту. Если нет MapKeyJoinColumn аннотация определяется, единственный объединяющий столбец принимается, и значения по умолчанию применяются.


    Example 1:

    @Entity
    public class Company {
       @Id int id;
       ...
       @OneToMany   // unidirectional
       @JoinTable(name="COMPANY_ORGANIZATION",
                  joinColumns=@JoinColumn(name="COMPANY"),
                  inverseJoinColumns=@JoinColumn(name="VICEPRESIDENT"))
       @MapKeyJoinColumn(name="DIVISION")
       Map<Division, VicePresident> organization;
    }

    Example 2:

    @Entity
    public class VideoStore {
       @Id int id;
       String name;
       Address location;
       ...
       @ElementCollection
       @CollectionTable(name="INVENTORY",
                        joinColumns=@JoinColumn(name="STORE"))
       @Column(name="COPIES_IN_STOCK")
       @MapKeyJoinColumn(name="MOVIE", referencedColumnName="ID")
       Map<Movie, Integer> videoInventory;
       ...
     }

     @Entity
     public class Movie {
        @Id long id;
        String title;
        ...
     }

     Example 3:

     @Entity
     public class Student {
        @Id int studentId;
        ...
        @ManyToMany  // students and courses are also many-many
        @JoinTable(name="ENROLLMENTS",
                   joinColumns=@JoinColumn(name="STUDENT"),
                   inverseJoinColumns=@JoinColumn(name="SEMESTER"))
        @MapKeyJoinColumn(name="COURSE")
        Map<Course, Semester>  enrollment;
        ...
     }
 

С тех пор:
Персистентность Java 2.0

Дополнительная Сводка Элемента
 java.lang.String columnDefinition
          (Дополнительный) фрагмент SQL, который используется, генерируя DDL для столбца.
 boolean insertable
          (Дополнительный), включается Ли столбец в операторы INSERT SQL, сгенерированные провайдером персистентности.
 java.lang.String имя
          (Дополнительный) имя столбца внешнего ключа для ключа карты.
 boolean nullable
          (Дополнительный), является Ли столбец внешнего ключа nullable.
 java.lang.String referencedColumnName
          (Дополнительный) На имя столбца ссылается этот столбец внешнего ключа.
 java.lang.String таблица
          (Дополнительный) имя таблицы, которая содержит столбец внешнего ключа.
 boolean уникальный
          (Дополнительный), является Ли свойство уникальным ключом.
 boolean обновляемый
          (Дополнительный), включается Ли столбец в операторы UPDATE SQL, сгенерированные провайдером персистентности.
 

имя

public abstract java.lang.String name
(Дополнительный) имя столбца внешнего ключа для ключа карты. Таблица, в которой это находится, зависит от контекста.

Значение по умолчанию (только применяется, если единственный объединяющий столбец используется.) Связь следующего: имя свойства отношения ссылки или поле объекта ссылки или встраиваемого class; "_"; "КЛЮЧ".

Значение по умолчанию:
""

referencedColumnName

public abstract java.lang.String referencedColumnName
(Дополнительный) На имя столбца ссылается этот столбец внешнего ключа. Столбец, на который ссылаются, находится в таблице целевого объекта.

Значение по умолчанию (только применяется, если единственный объединяющий столбец используется.) То же самое имя как столбец первичного ключа таблицы, на которую ссылаются,

Значение по умолчанию:
""

уникальный

public abstract boolean unique
(Дополнительный), является Ли свойство уникальным ключом. Это - ярлык для UniqueConstraint аннотация на табличном уровне и полезна для того, когда ограничение уникального ключа является только единственным полем.

Значение по умолчанию:
ложь

nullable

public abstract boolean nullable
(Дополнительный), является Ли столбец внешнего ключа nullable.

Значение по умолчанию:
ложь

insertable

public abstract boolean insertable
(Дополнительный), включается Ли столбец в операторы INSERT SQL, сгенерированные провайдером персистентности.

Значение по умолчанию:
истина

обновляемый

public abstract boolean updatable
(Дополнительный), включается Ли столбец в операторы UPDATE SQL, сгенерированные провайдером персистентности.

Значение по умолчанию:
истина

columnDefinition

public abstract java.lang.String columnDefinition
(Дополнительный) фрагмент SQL, который используется, генерируя DDL для столбца. Значения по умолчанию к SQL сгенерированы провайдером для столбца.

Значение по умолчанию:
""

таблица

public abstract java.lang.String table
(Дополнительный) имя таблицы, которая содержит столбец внешнего ключа.

Значение по умолчанию:

Значение по умолчанию:
""


Представьте ошибку или функцию

Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается срокам действия лицензии.

Сгенерированный на 10-February-2011 12:41


Spec-Zone.ru - all specs in one place



free hit counter