-
@Target(TYPE) @Retention(RUNTIME) public @interface DiscriminatorColumn
Specifies the discriminator column for theSINGLE_TABLE
andJOINED
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 toDiscriminatorType.STRING
.Example: {@snippet :
- Since:
- 1.0
- See Also:
DiscriminatorValue
,DiscriminatorType
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description java.lang.String
columnDefinition
(Optional) The SQL fragment that is used when generating the DDL for the discriminator column.DiscriminatorType
discriminatorType
(Optional) The type of object/column to use as a class discriminator.int
length
(Optional) The column length for String-based discriminator types.java.lang.String
name
(Optional) The name of column to be used for the discriminator.java.lang.String
options
(Optional) A SQL fragment appended to the generated DDL which declares this column.
-
-
-
-
discriminatorType
DiscriminatorType discriminatorType
(Optional) The type of object/column to use as a class discriminator. Defaults toDiscriminatorType.STRING
.- Default:
- jakarta.persistence.DiscriminatorType.STRING
-
-
-
options
java.lang.String options
(Optional) A SQL fragment appended to the generated DDL which declares this column. May not be used in conjunction withcolumnDefinition()
.- Since:
- 3.2
- Default:
- ""
-
-