0

ちょっとばかげた質問ですが、どこにも答えが見つかりませんでした。@Embeddable オブジェクトがデータベースに格納される方法は、FK を使用した OneToOne のようなものですか...たとえば、次の場合:

@Entity
public class User {
   private Long id;

   @Id 
   public Long getId() { return id; }
   public void setId(Long id) { this.id = id; }


   private Address address;

   @Embedded 
   public Address getAddress() { return address; }
   public void setAddress() { this.address = address; }
}


@Embeddable
public class Address {
   private String street1;

   public String getStreet1() { return street1; }
   public void setStreet1() { this.street1 = street1; }
}

テーブルはどのように見えるべきですか?

4

2 に答える 2

2

埋め込みオブジェクトのフィールドは、所有エンティティのテーブルに列として追加されます。

したがってUser、フィールドidとを持つテーブルができますstreet1

于 2011-02-22T09:50:05.290 に答える
1

これは非常に簡単です。埋め込みオブジェクトのすべての列が親の列にマージされ、1 つのテーブルが作成されます。あなたの例では、User列を含むテーブルになります: idand street1. したがって、埋め込みオブジェクトは基本的に、1 つのテーブル内で列を論理的にグループ化する方法です。

于 2011-02-22T09:50:46.533 に答える