Hibernate 如何定义联接表继承策略的外键名称?
我正在使用hibernate工具(版本4.3)中的hbm2ddl生成我的ddl脚本。外键的名称是生成的,例如,Hibernate 如何定义联接表继承策略的外键名称?,hibernate,jpa,hsqldb,hibernate-4.x,Hibernate,Jpa,Hsqldb,Hibernate 4.x,我正在使用hibernate工具(版本4.3)中的hbm2ddl生成我的ddl脚本。外键的名称是生成的,例如,FK_14n63; malgiroxq6j6efy53skl 是否有定义名称的方法,例如FK\u DOMAIN\u EVENT\u ID?我尝试了@PrimaryKeyJoinColumn和@ForeignKey但没有成功 以下是基本实体: @Entity @Inheritance(strategy = InheritanceType.JOINED) public class Domai
FK_14n63; malgiroxq6j6efy53skl
是否有定义名称的方法,例如FK\u DOMAIN\u EVENT\u ID
?我尝试了@PrimaryKeyJoinColumn
和@ForeignKey
但没有成功
以下是基本实体:
@Entity
@Inheritance(strategy = InheritanceType.JOINED)
public class DomainEvent {
@Id
private UUID id;
private Calendar occuredOn;
}
下面是扩展类:
@Entity
@PrimaryKeyJoinColumn(foreignKey = @ForeignKey(name = "FK_DOMAIN_EVENT_ID"))
public class OrderSubmittedEvent extends DomainEvent {
private String orderId;
}
这里是生成的输出和生成的外键FK_14n63malgiroxq6j6efy53skl:
创建表域\u事件(
id二进制(255)不为空,
在时间戳上出现\u,
主键(id)
);
创建表格订单\u已提交\u事件(
订单号varchar(255),
id二进制(255)不为空,
主键(id)
);
更改表顺序\u已提交\u事件
添加约束FK_14n63malgiroxq6j6efy53skl
外键(id)
参考领域事件;