0
は、Animalクラスを継承しているHibernateの継承
牛や犬でこのシナリオを実装する手助けが必要、
牛と犬の両方持っている「子孫」リスト
牛は、追加のリストを持っている - 毎月のワクチン日付
このHibernateの表現は正しいでしょうか?
CowクラスにOneToMany Vaccineリストを入れることは正しいですか
またはAnimalクラスにする必要がありますか?
ありがとうございます!Hibernateのアノテーションの継承OneToMany Placemant
@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;
}
ドンキークラスにもワクチンが必要な場合、中間抽象クラスをAnimalと[Donkey、Cow]の間に入れて、ワクチンリストを保持するのは正しいですか? – user648026
これは大丈夫です。私はまた、動物ではないので、中間クラスを抽象的にすることを選択します。したがって、それ自体でインスタンス化する必要はありません。 – verhage