我有两个集合,groups和permissions。第一个集合运行良好,并删除了从集合中删除的条目。但是permissions集合没有做应做的事情。我总是从集合中删除条目,但是更改不会在数据库中更新。
@ManyToMany
@JoinTable(name = "user_groups")
private List<Group> groups = new ArrayList<Group>();
@OneToMany(cascade = CascadeType.ALL, mappedBy = "user")
@OrderBy("name ASC")
private List<UserPermission> permissions = new ArrayList<UserPermission>();
使用相同的代码保存包含这两个列表的实体,使用相同的代码删除条目。
尝试使用orphanRemoval = true orphan-removal
允许您在其父级不再引用子级实体时删除它:
@OneToMany(cascade = CascadeType.ALL, mappedBy = "user", orphanRemoval = true)
@OrderBy("name ASC")
private List<UserPermission> permissions;
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。