Как спящий магазин встраиваемый объект - PullRequest
0 голосов
/ 22 февраля 2011

глупый вопрос, но я нигде не нашел ответа. Как объект @Embeddable хранится в базе данных, это своего рода OneToOne с FK или ... Например, если у меня есть:

@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; }
}

Как должны выглядеть таблицы (ы)?

Ответы [ 2 ]

2 голосов
/ 22 февраля 2011

Поля встроенного объекта добавляются в виде столбцов в таблицу объекта-владельца.

Таким образом, у вас будет таблица User с полями id и street1.

1 голос
/ 22 февраля 2011

Это очень просто: все столбцы встроенного объекта будут объединены в столбцы родительского объекта, в результате чего получится одна таблица. В вашем примере вы получите таблицу User, содержащую столбцы: id и street1. Таким образом, встроенные объекты - это в основном способ логически сгруппировать столбцы в одной таблице.

...