Top Description Methods
org.eclipse.persistence.annotations

public @Interface VariableOneToOne

extends Annotation
Annotations
@Target:METHOD, FIELD
@Retention:RUNTIME
Imports
java.lang.annotation.Retention, .Target, jakarta.persistence.CascadeType, .DiscriminatorColumn, .FetchType

Variable one to one mappings are used to represent a pointer references between a java object and an implementer of an interface. This mapping is usually represented by a single pointer (stored in an instance variable) between the source and target objects. In the relational database tables, these mappings are normally implemented using a foreign key and a type code. A VariableOneToOne can be specified within an Entity, MappedSuperclass and Embeddable class.
Author
Guy Pelletier
Since
Eclipselink 1.0

Method Summary

Modifier and TypeMethod and Description
public CascadeType[]
cascade()

(Optional) The operations that must be cascaded to the target of the association.

public DiscriminatorClass[]
discriminatorClasses()

(Optional) The list of discriminator types that can be used with this VariableOneToOne.

public DiscriminatorColumn
discriminatorColumn()

(Optional) The discriminator column will hold the type indicators.

public FetchType
fetch()

(Optional) Defines whether the value of the field or property should be lazily loaded or must be eagerly fetched.

public boolean
optional()

(Optional) Whether the association is optional.

public boolean
orphanRemoval()

(Optional) Whether to apply the remove operation to entities that have been removed from the relationship and to cascade the remove operation to those entities.

public Class<?>
targetInterface()

(Optional) The interface class that is the target of the association.

Inherited from java.lang.annotation.Annotation:
annotationTypeequalshashCodetoString

Method Detail

cascadeback to summary
public CascadeType[] cascade()

(Optional) The operations that must be cascaded to the target of the association.

discriminatorClassesback to summary
public DiscriminatorClass[] discriminatorClasses()

(Optional) The list of discriminator types that can be used with this VariableOneToOne. If none are specified then those entities within the persistence unit that implement the target interface will be added to the list of types. The discriminator type will default as follows: - If DiscriminatorColumn type is STRING: Entity.name() - If DiscriminatorColumn type is CHAR: First letter of the Entity class - If DiscriminatorColumn type is INTEGER: The next integer after the highest integer explicitly added.

discriminatorColumnback to summary
public DiscriminatorColumn discriminatorColumn()

(Optional) The discriminator column will hold the type indicators. If the DiscriminatorColumn is not specified, the name of the discriminator column defaults to "DTYPE" and the discriminator type to STRING.

fetchback to summary
public FetchType fetch()

(Optional) Defines whether the value of the field or property should be lazily loaded or must be eagerly fetched. The EAGER strategy is a requirement on the persistence provider runtime that the value must be eagerly fetched. The LAZY strategy is a hint to the persistence provider runtime. If not specified, defaults to EAGER.

optionalback to summary
public boolean optional()

(Optional) Whether the association is optional. If set to false then a non-null relationship must always exist.

orphanRemovalback to summary
public boolean orphanRemoval()

(Optional) Whether to apply the remove operation to entities that have been removed from the relationship and to cascade the remove operation to those entities.

targetInterfaceback to summary
public Class<?> targetInterface()

(Optional) The interface class that is the target of the association. If not specified it will be inferred from the type of the object being referenced.