`
diaolanshan
  • 浏览: 173300 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

项目中用到的JPA Annotation 之一:DiscriminatorColumn

    博客分类:
  • JAVA
阅读更多

Target:
Classes

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:

JPA 1.0

See Also:

DiscriminatorValue
(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 value:
""
Since:
JPA 1.0
(Optional) The type of object/column to use as a class discriminator. Defaults to DiscriminatorType.STRING.
Default value:
javax.persistence.DiscriminatorType.STRING
Since:
JPA 1.0
int length
(Optional) The column length for String-based discriminator types. Ignored for other discriminator types.
Default value:
31
Since:
JPA 1.0
String name
(Optional) The name of column to be used for the discriminator.
Default value:
"DTYPE"
Since:
JPA 1.0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics