Jpa/Hibernateにクラス階層ごとのクラシックテーブルマッピングがあります。
すべての父は:
@Entity
@Table( name="products", uniqueConstraints=@UniqueConstraint(columnNames="barcode") )
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(
name="discriminator",
discriminatorType=DiscriminatorType.STRING
)
@DiscriminatorValue(value="GENERAL")
public class Product implements Serializable ...
それから私は持っているでしょう:
@Entity
@Table( name="products" )
@DiscriminatorValue("GLASS")
public class Sunglasses extends Product ...
今、私はあなたに尋ねます:ある日、私は与えられた製品がサングラスであるか他の製品タイプであるかを決定する必要があります。そのために「ディスクリミネーター」がいると思いますが……。
どのように?