我有一个用hibernate注释定义的ManyToMany关系,我使用hbm2ddl创建我的模式,连接表是用外键创建的,但我没有设法将“on delete cascade”操作添加到外键。 我尝试过: @OnDelete(动作= OnDeleteAction.CASCADE) 但我得到了这个例外:
只有反对一对多关联可以使用on-delete =“cascade”
如果我手动将删除级联添加到我的架构,它可以正常工作。
我正在使用hibernate 3.5.3和JPA 2.0以及postgres 8.4
是否可以添加'on delete cascade'来连接使用hbm2ddl创建外键的表?
ClassA
{
@OnDelete(action=OnDeleteAction.CASCADE)
@ManyToMany(targetEntity = ClassB.class)
@JoinTable(name = "CLASS_A_B", joinColumns = { @JoinColumn(name = "PARENT_CLASS_A") }, inverseJoinColumns = { @JoinColumn(name = "CHILD_CLASS_B_ID") })
public List<ClassB> getClassBList() {
if (classBList == null) {
classBList = new ArrayList<ClassB>();
}
return this.classBList;
}
}