ai_test
ai_test
2012-03-01 09:56

JPA 管理关联关系问题

  • jpa
  • 关联关系

问题描述:
双向多对多关系,比如:老师-学生,老师实体为关系持有方(mappedBy属性在学生实体),这样会有一个中间表 比如名称为:teacher_student.
现在因业务需要,做删除动作的时候,只能删除关联关系,并且既可以从老师实体方删除,也能从学生实体方删除.
从老师实体放删除这个jpa可以实现,可是从学生实体方去删除关联关系表怎么实现?
目前一个解决办法就是利用 EntityManager 调用createNativeQuery()执行本地sql直接操作中间表,可是这样的操作方式放在组件里总感觉是那么的"突兀",有没有更好的解决办法,比如:是否可以用jpql语句?
请各位大神不吝赐教!

注: Student 和 Teacher 中多对多彼此都是 Set t = new HashSet();

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

2条回答

为你推荐