Package jakarta.persistence
Annotation Type DiscriminatorColumn
- 
@Target(TYPE) @Retention(RUNTIME) public @interface DiscriminatorColumn
Specifies the discriminator column for theSINGLE_TABLEandJOINEDInheritancemapping strategies.The strategy and the discriminator column are only specified in the root of an entity class hierarchy or subhierarchy in which a different inheritance strategy is applied
If the
DiscriminatorColumnannotation is missing, and a discriminator column is required, the name of the discriminator column defaults to"DTYPE"and the discriminator type toDiscriminatorType.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 { ... }- Since:
 - 1.0
 - See Also:
 DiscriminatorValue
 
- 
- 
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description StringcolumnDefinition(Optional) The SQL fragment that is used when generating the DDL for the discriminator column.DiscriminatorTypediscriminatorType(Optional) The type of object/column to use as a class discriminator.intlength(Optional) The column length for String-based discriminator types.Stringname(Optional) The name of column to be used for the discriminator. 
 - 
 
- 
- 
Element Detail
- 
name
String name
(Optional) The name of column to be used for the discriminator.- Default:
 - "DTYPE"
 
 
 - 
 
- 
- 
discriminatorType
DiscriminatorType discriminatorType
(Optional) The type of object/column to use as a class discriminator. Defaults toDiscriminatorType.STRING.- Default:
 - jakarta.persistence.DiscriminatorType.STRING
 
 
 - 
 
- 
- 
columnDefinition
String columnDefinition
(Optional) The SQL fragment that is used when generating the DDL for the discriminator column.Defaults to the provider-generated SQL to create a column of the specified discriminator type.
- Default:
 - ""
 
 
 - 
 
 -