javax.persistence

## Annotation Type DiscriminatorColumn

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

Specifies 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`.

         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:
  Java Persistence 1.0
See Also:
  `DiscriminatorValue`

### Optional Element Summary

Optional Elements
`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.
`String` `name` (Optional) The name of column to be used for the discriminator.

### Element Detail

#### name

    public abstract String name

(Optional) The name of column to be used for the discriminator.

Default:
  "DTYPE"

#### discriminatorType

    public abstract DiscriminatorType discriminatorType

(Optional) 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

(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:
  ""

#### length

    public abstract int length

(Optional) The column length for String-based discriminator types. Ignored for other discriminator types.

Default:
  31