微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何修复 TransientPropertyValueException:对象引用未保存的瞬态实例 - 在刷新之前保存瞬态实例

如何解决如何修复 TransientPropertyValueException:对象引用未保存的瞬态实例 - 在刷新之前保存瞬态实例

当我尝试更新时出现此错误:TransientPropertyValueException:对象引用未保存的瞬态实例 - 在刷新之前保存瞬态实例。我如何知道此错误与 Cascade 类型有关,但我无法解决此问题。 add方法也报错,我在StudentEntity类中将Cascade类型改为Merge,问题就解决了。

  @Entity
    @Table(name = "teacher")
    public class TeacherEntity {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String name;

    @ManyToMany(cascade = {
            CascadeType.PERSIST,CascadeType.MERGE
    })
    @JoinTable(name = "student_teacher",joinColumns = @JoinColumn(name = "teacher_id"),inverseJoinColumns = @JoinColumn(name = "student_id")
    )}



 @Entity
    @Table(name = "student")
    public class StudentEntity {
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Integer id;
        private String name;
        private String surname;
        private Integer age;
        private BigDecimal scholarship;
    
        @ManyToMany(fetch = FetchType.EAGER,cascade = {
                CascadeType.MERGE
        })
        @JoinTable(name = "student_teacher",joinColumns = @JoinColumn(name = "student_id"),inverseJoinColumns = @JoinColumn(name = "teacher_id")
        )
        List<TeacherEntity> teacherList;
    
        @ManyToOne
        @JoinColumn(name = "school_id")
        private SchoolEntity school;}




@Entity
@Table(name = "school")
public class SchoolEntity {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String name;

    @OnetoMany
    private List<StudentEntity> studentList;

    @OnetoOne(mappedBy = "school",cascade = CascadeType.ALL)
    private SchoolAddressEntity address;}



@Entity
@Table(name = "school_address")
public class SchoolAddressEntity {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String name;

    @OnetoOne
    @JoinColumn(name = "school_id")
    private SchoolEntity school;}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。