1

このJPA の例には、のコードがあります。

@OneToOne(cascade=CascadeType.ALL)
private Deity mother;

@OneToOne(cascade=CascadeType.ALL)
private Deity father;

@OneToMany(cascade=CascadeType.ALL)
private Set<Deity> children;

@ManyToOne関係ではなく、@OneToOne アノテーションによって父と母との関係が実装されるのはなぜですか? ChildParentが別々のクラスになる場合、 Parentには が@OneToMany Collection<Child> childrenあり、Childには があります@ManyToOne Parent parent。この(神)の例は理にかなっているように見えますが、なぜそうなのか説明を探しています。

JPA仕様へのリンクは非常に高く評価されます。

4

2 に答える 2

1

よくわかりませんが、サイトの例では、1人の母親と1人の父親(したがって、1対1の関係)と多くの子供(1対多の関係)を持つ人を参照できます。

この例は、その関係を示すためだけのものかもしれません。

PS:本当にわかりませんが、これが私に起こったことです。

于 2009-10-19T08:49:26.257 に答える
1

おっしゃるとおり、 ManyToOne の関係になるはずです。

このコードの作成者のミスに違いありません。コードの他の部分も疑わしく見えますが、あまり信用できません...


優れた永続化の例を探している場合は、Hibernate のドキュメントをお勧めします。Hibernate は可能な限り JPA に固執します。

注:コードをHibernateに切り替えるか、使用しているものにとどまり、ドキュメントのみを使用できます...

于 2009-10-19T07:52:11.337 に答える