zoukankan      html  css  js  c++  java
  • hibernate 对象状态异常:object references an unsaved transient instance save the transient instance before flushing

    由于要保持的对象持有一个未持久化的对象导致,

    我是MANY TO ONE 的时候,引导的那个ONE对象所有属性都是NULL,造成这个异常。

    解决办法:配置cascade关键字,级联操作。

    我是用的JPA注解和Hibernate的有些不同,

    JPA 中定义了四种 CASCADE 类型:

        * PERSIST:持久保存拥有方实体时,也会持久保存该实体的所有相关数据。
        * MERGE:将分离的实体重新合并到活动的持久性上下文时,也会合并该实体的所有相关数据。
        * REMOVE:删除一个实体时,也会删除该实体的所有相关数据。
        * ALL:以上都适用。

    @ManyToOne(cascade={CascadeType.PERSIST,CascadeType.MERGE})

    @JoinColumn(name = "teacher_id")

    private Teacher teacher;  

    解决问题。

  • 相关阅读:
    无锁编程(五)
    Linux Kernel CMPXCHG函数分析
    无锁编程(四)
    无锁编程(三)
    无锁编程(二)
    无锁编程(一)
    无锁编程
    Linux同步机制
    Linux同步机制
    bootstrap css编码规范
  • 原文地址:https://www.cnblogs.com/onlywujun/p/3012719.html
Copyright © 2011-2022 走看看