如何在使用hibernate时删除数据库中的行?

时间:2013-12-13 14:40:16

标签: mysql hibernate

我创建了一个类,如下所示

public class User {
@OneToMany(cascade={CascadeType.ALL)
@JoinColumn(name="ID")
private List<Address> userAddresses;
....
....
}

public class userAddress {
@ManyToOne
@JoinColumn(name="ID")
private User usr;
.....
....
}

如果我删除User表中的单行,它会自动删除userAddress中的行。如果没有,请让我知道如何声明要自动删除的属性。我听说过级联的事情,但我不知道声明它的正确语法。

1 个答案:

答案 0 :(得分:0)

尝试像这样映射:

public class User {
      @OneToMany(mappedBy="usr", cascade={CascadeType.ALL}, orphanRemoval="true")
      private List<Address> userAddresses;
}            

public class userAddress {
      @ManyToOne
      @JoinColumn(name="ID")
      private User usr;
}