È possibile che una classe di entità JPA contenga due @Embedded
campi embedded ( )? Un esempio potrebbe essere:
@Entity
public class Person {
@Embedded
public Address home;
@Embedded
public Address work;
}
public class Address {
public String street;
...
}
In questo caso a Person
può contenere due Address
istanze: casa e lavoro. Sto usando JPA con l'implementazione di Hibernate. Quando genero lo schema usando Hibernate Tools, ne incorpora solo uno Address
. Quello che vorrei sono due Address
istanze incorporate , ciascuna con i nomi delle colonne distinti o preceduti da un prefisso (come casa e lavoro). Lo so @AttributeOverrides
, ma questo richiede che ogni attributo venga ignorato individualmente. Questo può diventare complicato se l'oggetto incorporato ( Address
) diventa grande poiché ogni colonna deve essere sovrascritta individualmente.
name="street"
riferisce al nome della proprietà, non al nome della colonna.