| 
Java EE 5 SDK | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | ||||||||
@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 { ... }
 
| 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.  | 
public abstract String name
public abstract DiscriminatorType discriminatorType
DiscriminatorType.STRING.
public abstract String columnDefinition
Defaults to the provider-generated SQL to create a column of the specified discriminator type.
public abstract int length
  | 
Java EE 5 SDK | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | ||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved.