Hibernate discriminator-value用法
阿新 • • 發佈:2019-01-30
...
</id>
<discriminator column="flag" type="string" />
<!--
公共屬性的對映
-->
<subclass name="CustomerA" discriminator-value="A">
<!--
一級客戶特有屬性的對映
-->
</subclass>
<subclass name="CustomerB" discriminator-value="B">
<!--
二級客戶特有屬性的對映
-->
</subclass>
這樣就可以單獨的用
CustomerA,CustomerB
這樣的例項了,
做資料庫修改時
就不用關心
flag
欄位的值了,會自動的加
A
或
B
。
如果是使用
hibernate
Annotation
而不是
xml
來描述映謝關係,
程式碼如下:
@Entity
@Table(name = "customer")
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "flag", discriminatorType =
DiscriminatorType.STRING)
public class Customer{
}
@Entity
@DiscriminatorValue(value = "A")
public class CustomerA extends Customer{