程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Java JPA CascadeType.ALL不删除孤立项大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Java JPA CascadeType.ALL不删除孤立项?

开发过程中遇到Java JPA CascadeType.ALL不删除孤立项的问题如何解决?下面主要结合日常开发的经验,给出你关于Java JPA CascadeType.ALL不删除孤立项的解决方法建议,希望对你解决Java JPA CascadeType.ALL不删除孤立项有所启发或帮助;

如果将它与Hibernate一起使用,则必须显式定义批注CascadeType.deletE_ORPHAN,该批注可与JPA结合使用CascadeType.ALL

如果你不打算使用Hibernate,则必须先明确删除子元素,然后再删除主记录,以避免出现任何孤立记录。

执行顺序

  1. 获取要删除的主行
  2. 获取子元素
  3. 删除所有子元素
  4. 删除主行
  5. 闭门会议

JPA 2.0中,你现在可以使用选项orphanRemoval = true

@OnetoMany(mappedBy="foo", orphanRemoval=truE)

解决方法

我在使用带有以下映射的JPA删除孤立节点时遇到问题

@OneToMany (cascade = CascadeType.ALL,fetch = FetchType.EAGER,mappedBy = "owner")
private List<Bikes> bikes;

我遇到了孤立角色挂在数据库周围的问题。

我可以使用org.hibernate.Annotations.Cascade特定于注释的Hibernate标记,但是显然我不想将解决方案绑定到Hibernate实现中。

编辑:似乎JPA 2.0将包括对此的支持。

大佬总结

以上是大佬教程为你收集整理的Java JPA CascadeType.ALL不删除孤立项全部内容,希望文章能够帮你解决Java JPA CascadeType.ALL不删除孤立项所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。