Overview | Package | Class | Tree | Deprecated | Index | Help
| Java EE 5 SDK
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT

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

         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

Optional Element Summary
`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.

### 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:
    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

Overview | Package | Class | Tree | Deprecated | Index | Help
| Java EE 5 SDK
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT

Submit a bug or feature

Copyright 2006 Sun Microsystems, Inc. All rights reserved.