Giriş
Single Table Inheritance varsa kullanılır. Eğer @DiscriminatorVaue anotasyonuna değer vermezsek sınıfın ismini alır.
Örnek
Elimizde bir ata sınıf olsun.
Single Table Inheritance varsa kullanılır. Eğer @DiscriminatorVaue anotasyonuna değer vermezsek sınıfın ismini alır.
Örnek
Elimizde bir ata sınıf olsun.
@Getter
@Setter
@Table(name = "ANIMAL")
@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(discriminatorType = DiscriminatorType.STRING, name = "TYPE")
public class Animal {
@Id
@Column(name = "ID")
private String id;
@Column(name = "NAME")
private String name;
}
Kalıtan sınıflar olsun.@Entity
@DiscriminatorValue("REPTILE")
public class Reptile extends Animal {
}
Kalıtan sınıflar olsun.@Entity
@DiscriminatorValue("BIRD")
public class Bird extends Animal {
}
Tablo satıları şöyledir.---------------------------
ID||NAME ||TYPE ||
---------------------------
1 ||Crocodile ||REPTILE ||
---------------------------
2 ||Dinosaur ||REPTILE ||
---------------------------
3 ||Lizard ||REPTILE ||
---------------------------
4 ||Owl ||BIRD ||
---------------------------
5 ||parrot ||BIRD ||
---------------------------
Hiç yorum yok:
Yorum Gönder