Java Hibernate:如何级联未映射的实体?
是否可以在不映射一对多关系的情况下设置级联? 我有两个实体:Java Hibernate:如何级联未映射的实体?,java,hibernate,jpa,Java,Hibernate,Jpa,是否可以在不映射一对多关系的情况下设置级联? 我有两个实体: @Entity @Table(name = "USER") public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "ID") private Long id; ... } 及 如果我试图删除一个用户,并且存在该用户的任何记录,那么由于外键的原因,它显然会失败。我想在
@Entity
@Table(name = "USER")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ID")
private Long id;
...
}
及
如果我试图删除一个用户,并且存在该用户的任何记录,那么由于外键的原因,它显然会失败。我想在删除用户之前删除该用户的所有记录。
我看到两种选择:
将记录为@OneToMany
用户关系中的并设置cascade
@OneToMany(mappedBy = "user", cascade = CascadeType.REMOVE)
private Set<Record> records;
@OneToMany(mappedBy=“user”,cascade=CascadeType.REMOVE)
私人录音;
还有第三种选择吗?如何设置级联而不在用户实体中映射记录?级联在JPA中工作不好,最好手动处理
@OneToMany(mappedBy = "user", cascade = CascadeType.REMOVE)
private Set<Record> records;