javax.persistence
Annotation Type DiscriminatorColumn


@Target(value=TYPE)
@Retention(value=RUNTIME)
public @interface DiscriminatorColumn

Is used to define the discriminator column for the 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.

Author:
Emmanuel Bernard

Optional Element Summary
 String columnDefinition
          The SQL fragment that is used when generating the DDL for the discriminator column.
 DiscriminatorType discriminatorType
          The type of object/column to use as a class discriminator.
 int length
          The column length for String-based discriminator types.
 String name
          The name of column to be used for the discriminator.
 

name

public abstract String name
The name of column to be used for the discriminator.

Default:
"DTYPE"

discriminatorType

public abstract DiscriminatorType discriminatorType
The type of object/column to use as a class discriminator. Defaults to DiscriminatorType.STRING

Default:
javax.persistence.DiscriminatorType.STRING

columnDefinition

public abstract String columnDefinition
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:
""

length

public abstract int length
The column length for String-based discriminator types. Ignored for other discriminator types.

Default:
31