从具有休眠fk的表中删除一行

时间:2017-06-21 13:24:22

标签: hibernate foreign-keys delete-row

是否有一种简单的方法可以从表中删除行而不事先从其他表中删除使用hibernate的外键约束中涉及的行?

1 个答案:

答案 0 :(得分:0)

是的,有可能:

想象一下,你有以下课程

public class User
{

 @OneToOne(cascade=CascadeType.REMOVE)  
 private Account bankAccount; // FK toward Accounttable
}

例如,当您删除用户时,您想删除与其关联的帐户记录。 因此,在您的关系中添加CascadeType.REMOVE也会删除相关实体。

然后:

session.delete(user); // will remove account associated

如果您需要从User类更多地控制您的帐户类,也可以将CascadeType.ALL放入而不是删除。 希望有所帮助