hibernate映射exception

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate映射exception相关的知识,希望对你有一定的参考价值。

技术分享

错误原因:在通过hibernate指示生成两个表之间的外键关系之后,一个表中引用的外键不在另一个表的参考范围里面。

解决:使之满足参考完整性

 

org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing

错误原因:在将classes持久化到数据库之前数据库中并没有students表

技术分享
public void add() {
        Session session = sessionFactory.openSession();
        session.beginTransaction();
        Set students  =  new HashSet();
         for(int i =0;i<5;i++){
             Students s = new Students();
             s.setAddress(null);
             s.setGender(null);
             s.setName("num"+i);
             s.setClassnum(1);
             s.setClassnum(1);
             students.add(s);
         }
        Classes  c = new Classes();
        c.setClass_name("cs_1");
        c.setStudents(students);
        session.save(c);
        session.getTransaction().commit();
        session.close();
    }
View Code

解决:在classes(即一方)xml中配置cascade=all

以上是关于hibernate映射exception的主要内容,如果未能解决你的问题,请参考以下文章

具有运行时 pojos 的带有 Hibernate 的 OSGi 片段包

hibernate问题

不断收到 org.hibernate.exception.JDBCConnectionException:无法执行查询

1-7 hibernate关联关系映射

PostgreSQL 枚举和 Java 枚举之间的休眠映射

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)(代码片段