Czy klasa jednostki JPA może zawierać dwa @Embedded
pola embedded ( )? Przykładem może być:
@Entity
public class Person {
@Embedded
public Address home;
@Embedded
public Address work;
}
public class Address {
public String street;
...
}
W tym przypadku Person
może zawierać dwie Address
instancje - dom i praca. Używam JPA z implementacją Hibernate. Kiedy generuję schemat za pomocą narzędzi Hibernate Tools, osadza tylko jeden Address
. Chciałbym mieć dwie osadzone Address
instancje, każda z wyróżnionymi nazwami kolumn lub poprzedzonymi jakimś prefiksem (np. Dom i praca). Wiem o tym @AttributeOverrides
, ale wymaga to indywidualnego nadpisania każdego atrybutu. Może to być kłopotliwe, jeśli osadzony obiekt ( Address
) staje się duży, ponieważ każda kolumna musi być indywidualnie nadpisana.
name="street"
odnosi się to do nazwy właściwości, a nie do nazwy kolumny.