@Target(TYPE)
@Retention(RUNTIME)
public @interface DiscriminatorColumn
SINGLE_TABLE and
JOINED Inheritance mapping 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 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 { ... }
DiscriminatorValue| 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 name
DiscriminatorType discriminatorType
DiscriminatorType.STRING.Copyright © 2018. All rights reserved.