开发者社区> 问答> 正文

Hibernate不会从集合中已删除的对象中删除条目 -java报错

我有两个集合,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>();

使用相同的代码保存包含这两个列表的实体,使用相同的代码删除条目。

展开
收起
montos 2020-05-27 21:29:12 457 0
1 条回答
写回答
取消 提交回答
  • 尝试使用orphanRemoval = true orphan-removal允许您在其父级不再引用子级实体时删除它:

    @OneToMany(cascade = CascadeType.ALL, mappedBy = "user", orphanRemoval = true)
        @OrderBy("name ASC")
        private List<UserPermission> permissions;
    
    2020-05-27 21:31:49
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载