0

@OneToOne メンバーに @ForiegnKey アノテーションを含めることは理にかなっていますか。

@Entity 
class User {

    @Id
    @GeneratedValue(strategy = IDENTITY)

    int id;

   @OneToOne
   @ForeignKey
   @JoinColumn(name = "home_address_id", referencedColumnName = "id")
   Address homeAddress;

}

@Entity 
class Address {
    @Id
    @GeneratedValue(strategy = IDENTITY)
    int id;
}
4

1 に答える 1

4

@OneToOneマッピングは列の外部キーを暗黙的に作成する必要があるため、必要ではないと思います。

一方、あなたや他の開発者がコードをより簡単に理解するのに役立ち、問題が発生しないと思われる場合は、そのままにしておくことができます。

ただし、OneToOne アノテーションが Java Persistence API の一部である場合、ForeingKey アノテーションは hibernate 固有のようです。これは、それを取り出すという考えをサポートするかもしれません。

于 2010-02-03T06:15:33.893 に答える