0

と呼ばれる Hibernate エンティティを取得しましArticleた。データベースの観点から、次のチャプター ID と前のチャプター ID を同じテーブルに格納したいので、テーブルとそれ自体の 2 つの 1 対 1 の関係があり、nextArticleIdpreviousArticleIdは外部キーです。同じテーブル。

私の質問は、このために Hibernate エンティティを作成するときに状況に対処する方法が提案されているということですか? それとも、これを 2 つの通常の 1 対 1 の関係として扱い、次の記事と前の記事を表すエンティティArticle内に 2 つの異なるオブジェクトを持っているだけですか?Article

よろしく、

4

2 に答える 2

1

質問:

このためにHibernateエンティティを作成するときに状況に対処する方法が提案されていますか?

答え:

これを 2 つの通常の 1 対 1 の関係として扱い、Article 内に 2 つの異なる Article オブジェクトを含めるだけです。

于 2016-05-24T15:58:34.750 に答える
1

そのようなマッピングを持つのは通常の方法です

class Article {

    @OneToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "fk_article_prev")
    private Article previouse;

    @OneToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "fk_article_next")
    private Article next;

} 
于 2016-05-24T15:58:45.203 に答える