需要帮助在 Hibernate 继承中实现此场景
Cow 和 Dog 都继承 Animal 类,
Cow 和 Dog 都有“后代”列表
Cow 有额外的列表 - 每月疫苗日期
这种 Hibernate 表示是否正确?
将 OneToMany 疫苗列表放在 Cow 类上是否正确,
或者它需要放在 Animal 类上?
谢谢!
@Entity
@Table(name = "animals")
@DiscriminatorColumn(name="animal_type")
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
public abstract class Animal{
@Id
@Column(name = "animalId" ,nullable = false)
private String animalId;
@OneToMany(cascade=CascadeType.ALL)
private List<Animal> offsprings = new ArrayList<Animal>();
public List<Animal> getOffsprings() {
return offsprings;
}
...
}
@Entity
@DiscriminatorValue("COW")
public class Coe extends Animal {
@OneToMany(cascade=CascadeType.ALL)
**private List<Vaccine> vaccine = new ArrayList<Vaccine>();**
}
@Entity
@DiscriminatorValue("DOG")
public class Dog extends Animal {
private chipId;
}