В настоящее время в моей модели домена есть следующее:
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
@Entity
abstract class Item {
@ManyToOne
@ForeignKey(name="FK_ITEM_ORG")
@JoinColumn(name="ORG_ID")
private Organization org
}
@Table(name = "ItemA")
public class ItemA extends Item {}
@Table(name = "ItemB")
public class ItemA extends Item {}
HBM2DDL Hibernate создает 2 таблицы для этого отображения: ItemA
и ItemB
. Оба имеют столбец ORG_ID
и внешний ключ к таблице Organization
. Однако к каждому внешнему ключу добавлено случайное число (например, FK_ITEM_ORG98343). Как я могу указать, какой внешний ключ использует каждая таблица? Например, я хочу иметь FK_ITEMA_ORG
и FK_ITEMB_ORG
.
Обновление
Также см. Следующий вопрос: Используется ли аннотация ForeignKey только для создания схемы HBM2DDL?