我有一个用户实体和一个部门实体
我想在它们之间建立@manyToMany 关系:
许多用户可以有许多部门。
在我的用户实体中:
@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "UserDepartments", joinColumns = { @JoinColumn(name = "user_id", referencedColumnName = "id") }, inverseJoinColumns = { @JoinColumn(name = "department_id", referencedColumnName = "id") })
private Set<Department> departments;
我的部门实体也有一组用户..
我的问题是:
如果我需要实现该方法:
public void removeUserFromDepartment(User user, Department department) {
//bla bla
}
我需要打电话吗
department.getUserCollection.remove(user);
和
user.getDepartmentCollection.remove(department);
或者有没有办法通过只删除其中一个来保持这种逻辑?
如果我必须同时保存两者,尤其是对于不了解这两个实体的多对多关系的人来说,这很难维护。