我有两张表 通过一个中间表关联 可是我在删除一张表数据的时候却将两张表的所有数据都删除了
想问一下如何设置才能只删除中间表的数据
下面是两个POJO的配置信息
其中一个ManyToMany的配置
@ManyToMany(cascade = CascadeType.REMOVE, fetch = FetchType.LAZY)
@JoinTable(name = "user_role", catalog = "demo", joinColumns = { @JoinColumn(name = "userId", updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "roleId", updatable = false) })
public Set getRoles() {
return this.roles;
}
public void setRoles(Set<Role> roles) {
this.roles = roles;
}
另一个ManyToMany的配置
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JoinTable(name = "user_role", catalog = "demo", joinColumns = { @JoinColumn(name = "roleId", updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "userId", updatable = false) })
public Set<User> getUsers() {
return this.users;
}
public void setUsers(Set<User> users) {
this.users = users;
}
困惑了好几天了。。哪位朋友明白帮忙看下。谢谢了