gpt4 book ai didi

java.lang.IllegalArgumentException : Removing a detached instance of StudentSubject

转载 作者:行者123 更新时间:2023-12-01 11:55:32 25 4
gpt4 key购买 nike

我的层次结构中有三个实体 1) 教师 2) 学生 3) 主题在教师实体中,与学生类(class)存在一对多关系。 Student类与Subject类有OneToMany关系。我有一个具体情况,老师有 5 个学生,学生有很多科目分配给他们。我正在获取教师实体并从教师实体中获取学生列表。在 5 个实体中,我使用 remove() 函数从列表中删除一个 Student 实体。保存教师实体时,出现错误:**java.lang.IllegalArgumentException:删除 StudentSubject 的分离实例 ** 这里 StudentSubject 是 Student 的子实体。

public class Teacher {

@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy="studentCode", orphanRemoval = true)
@org.hibernate.annotations.Fetch(org.hibernate.annotations.FetchMode.SELECT)
@org.hibernate.annotations.BatchSize(size=30)
private List<Student> students = new ArrayList<Student>();

}

public class Student {

@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy="studentSubjectCode", orphanRemoval = true)
@org.hibernate.annotations.Fetch(org.hibernate.annotations.FetchMode.SELECT)
@org.hibernate.annotations.BatchSize(size=30)
private List<StudentSubject> studentsubjects = new ArrayList<StudentSubject>();

}


public class StudentSubject {


}

非常感谢任何帮助。

最佳答案

经过调试和探索更多,我找到了这个问题的解决方案。在从家长列表中删除学生实体之前,我刷新了该实体。 StudentSubject 数组的所有引用随后都变为 Activity 状态,进而解决了保存 Teacher 对象时分离实体的问题。

关于java.lang.IllegalArgumentException : Removing a detached instance of StudentSubject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28472691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com