現在、ドメインモデルには次のものがあります。
@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 {}
HibernateのHBM2DDLは、このマッピング用に2つのテーブルを作成します:ItemA
およびItemB
。どちらにもORG_ID
列とテーブルへの外部キーがありOrganization
ます。ただし、各外部キーには乱数が追加されます(つまり、FK_ITEM_ORG98343)。各テーブルが使用する外部キーを指定するにはどうすればよいですか?たとえば、とが必要FK_ITEMA_ORG
ですFK_ITEMB_ORG
。
アップデート
次の質問も参照してください。ForeignKeyアノテーションは、スキーマを生成するためにHBM2DDLによってのみ使用されますか?