Jakarta Persistence (JPA) Annotation Type
jakarta.persistence.DiscriminatorColumn
- Implemented Interfaces:
Annotation
- Target:
- Type
Specifies the discriminator column for the
SINGLE_TABLE and JOINED inheritance mapping strategies. The mapping strategy and discriminator column are only specified for the root of an entity class hierarchy or subhierarchy in which a different inheritance strategy is applied.
If the DiscriminatorColumn annotation is missing, and a discriminator column is required, the name of the discriminator column defaults to "DTYPE" and the discriminator type to DiscriminatorType.STRING.
Example:
@Entity @Table(name = "CUST") @Inheritance(strategy = SINGLE_TABLE) @DiscriminatorColumn(name = "DISC", discriminatorType = STRING, length = 20) public class Customer { ... } @Entity public class ValuedCustomer extends Customer { ... }
- See Also:
- Since:
- Jakarta Persistence (JPA) 1.0
Public Instance Methods
String columnDefinition()Defaults to the provider-generated SQL to create a column of the specified discriminator type.
- Since:
- Jakarta Persistence (JPA) 1.0
Defaults to
DiscriminatorType.STRING.- Since:
- Jakarta Persistence (JPA) 1.0
int length()Ignored for other discriminator types.
- Since:
- Jakarta Persistence (JPA) 1.0
String name()- Since:
- Jakarta Persistence (JPA) 1.0
String options()May not be used in conjunction with
columnDefinition.- Since:
- Jakarta Persistence (JPA) 3.2
Annotation Elements
This is a marker annotation with no members/elements.
Additional JDK methods inherited from java.lang.annotation.Annotation
java.lang.annotation.Annotation/annotationType(), java.lang.annotation.Annotation/equals(Object), java.lang.annotation.Annotation/hashCode(), java.lang.annotation.Annotation/toString()