Spec-Zone .ru
спецификации, руководства, описания, API
|
|
|||||||||
ПРЕДЫДУЩИЙ КЛАСС СЛЕДУЮЩИЙ КЛАСС | ФРЕЙМЫ НИКАКИЕ ФРЕЙМЫ | ||||||||
СВОДКА: НЕОБХОДИМЫЙ | ДОПОЛНИТЕЛЬНЫЙ | ДЕТАЛЬ: ЭЛЕМЕНТ |
@Target(value={TYPE,METHOD,FIELD}) @Retention(value=RUNTIME) public @interface AssociationOverride
Используемый, чтобы переопределить отображение для связи сущностей.
Может быть применен к объекту, который расширяет отображенный суперкласс, чтобы переопределить отображение отношения, определенное отображенным суперклассом. Если не определенный, ассоциация отображается то же самое как в исходном отображении. Когда использующийся переопределять отображение, определенное отображенным суперклассом, AssociationOverride
применяется к объекту class.
Может использоваться, чтобы переопределить отношение, отображающееся от встраиваемого в пределах объекта к другому объекту, когда встраиваемое находится на стороне обладания отношения. Когда использующийся переопределять отображение отношения, определенное встраиваемым class (включая встраиваемый class, встроенный в пределах другого встраиваемого class), AssociationOverride
применяется к полю или свойству, содержащему встраиваемое.
Когда AssociationOverride
используется, чтобы переопределить отношение, отображающееся от встраиваемого class, name
элемент определяет поле отношения ссылки или свойство в пределах встраиваемого class. Переопределять отображения на многократных уровнях встраивания, точка (". "), синтаксис нотации должен использоваться в name
элемент, чтобы указать на атрибут в пределах встроенного атрибута. Значение каждого идентификатора, используемого с записью через точку, является именем соответствующего встроенного поля или свойства.
Когда AssociationOverride
применяется, чтобы переопределить отображения встраиваемого class, используемого в качестве значения карты,"value.
"должен использоваться, чтобы снабдить префиксом имя атрибута в пределах встраиваемого class, который переопределяется, чтобы определить это как часть значения карты.
Если отображение отношения является отображением внешнего ключа, joinColumns
элемент используется. Если отображение отношения использует объединяющую таблицу, joinTable
элемент должен быть определен, чтобы переопределить отображение объединяющей таблицы и/или ее объединяющих столбцов.
Example 1: Overriding the mapping of a relationship defined by a mapped superclass @MappedSuperclass public class Employee { ... @ManyToOne protected Address address; ... } @Entity @AssociationOverride(name="address", joinColumns=@JoinColumn(name="ADDR_ID")) // address field mapping overridden to ADDR_ID foreign key public class PartTimeEmployee extends Employee { ... }
Example 2: Overriding the mapping for phoneNumbers defined in the ContactInfo class @Entity public class Employee { @Id int id; @AssociationOverride( name="phoneNumbers", joinTable=@JoinTable( name="EMPPHONES", joinColumns=@JoinColumn(name="EMP"), inverseJoinColumns=@JoinColumn(name="PHONE") ) ) @Embedded ContactInfo contactInfo; ... } @Embeddable public class ContactInfo { @ManyToOne Address address; // Unidirectional @ManyToMany(targetEntity=PhoneNumber.class) List phoneNumbers; } @Entity public class PhoneNumber { @Id int number; @ManyToMany(mappedBy="contactInfo.phoneNumbers") Collection<Employee> employees; }
Embedded
, Embeddable
, MappedSuperclass
, AttributeOverride
Необходимая Сводка Элемента | |
---|---|
java.lang.String |
имя
(Требуемый) имя свойства отношения, отображение которого переопределяется, если основанный на свойстве доступ используется, или имя поля отношения, если основанный на поле доступ используется. |
Дополнительная Сводка Элемента | |
---|---|
JoinColumn[] |
joinColumns
Объединяющий столбец (цы), отображаемый на персистентный атрибут (ы). |
JoinTable |
joinTable
Объединяющая таблица, которая отображает отношение. |
Деталь элемента |
---|
public abstract java.lang.String name
public abstract JoinColumn[] joinColumns
joinColumns
элементы должны быть определены, если отображение внешнего ключа используется в переопределении отображения отношения. joinColumns
элемент не должен быть определен, если объединяющая таблица используется в переопределении отображения отношения.
public abstract JoinTable joinTable
joinTable
элемент должен быть определен, если объединяющая таблица используется в переопределении отображения отношения. joinTable
элемент не должен быть определен, если отображение внешнего ключа используется в переопределении отношения.
|
|||||||||
ПРЕДЫДУЩИЙ КЛАСС СЛЕДУЮЩИЙ КЛАСС | ФРЕЙМЫ НИКАКИЕ ФРЕЙМЫ | ||||||||
СВОДКА: НЕОБХОДИМЫЙ | ДОПОЛНИТЕЛЬНЫЙ | ДЕТАЛЬ: ЭЛЕМЕНТ |
Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается
Сгенерированный на 10-February-2011 12:41