工作中遇到了org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing,异常,反复调试,发现异常是有以下原因引起的:
由于我用的实体类的属性是一个对象(数据库中存放的是该对象id,number类型),前台的变量类型为number(对应该属性的id),但是有的记录的该属性为null,所以我后台传过去的值为null的时候,前台js自动设置成了0,这样显示是没有问题的,但是向后台传送保存的时候,由于在hibernate配置文件中指定了关联关系(尽管在数据结构中并没有说明其关系),所以再对该实体类对象其进行持久化的时候,hibernate会检查到数据库中没有对应的数据(该属性id),结果发现没有对应的记录,那么就会会出现该实体类对象引用了为未保存的瞬时态变量(因为库中不肯有id为0的情况,我的数据库是oracle,这个实体类对应的表指定的序列是从1开始自增的,所以不存在id为0的情况)的异常,从而导致程序没法运行。
解决方式,加上校验,如果id为0,就设置该属性为null,再次执行就可以了
相关推荐
在Java世界中,Java Persistence API(JPA)是Oracle公司推出的用于对象关系映射(ORM)的标准框架,它简化了数据库操作,使开发者能够用Java对象来操作数据库记录。本教程将深入探讨JPA中的一对多双向关联及级联...
3.Caused by:org.hibernate.TransientObjectException:object references an unsaved transient instance 原因:代码中关联的对象没有set值进去。查看代码,发现是enterPriseStrength和enterprise为多对一
TransientObjectException: object references an unsaved transient instance 这个异常通常发生在级联操作中,例如当配置了`cascade="save-update,persist"`。如果在保存一个对象时,该对象引用了一个未保存的...
在调试过程中,可能会遇到`Caused by: org.hibernate.TransientObjectException: object references an unsaved transient instance`这样的异常。这个异常通常是因为在持久化操作时,关联的对象没有被正确设置。例如...
**TransientObjectException: object references an unsaved transient instance** **异常描述:** 此异常表示一个实体引用了另一个尚未保存的瞬态实体。 **解决方法:** - 在保存实体之前先保存所有关联的瞬态...
hibernate4.3.5references chm文档
org.hibernate.TransientObjectException: object references an unsaved transient instance 当一个实体引用了另一个尚未保存的实体时,会抛出此类异常。这通常发生在级联保存的场景中,如果父实体尝试保存时,子...
`org.hibernate.TransientObjectException`: object references an unsaved transient instance** - **异常描述**:当尝试保存一个对象时,该对象引用了一个尚未被持久化的对象。 - **原因分析**:通常发生在尝试...
**标题:“Hibernate Annotations”** **概述** Hibernate是一个流行的Java对象关系映射(ORM)框架,它简化了在Java应用程序中处理数据库的过程。Hibernate Annotations是Hibernate框架的一个重要组成部分,它...
在描述中提到的`org.hibernate.PropertyValueException: not-null property references a null or transient value`是Hibernate抛出的一个常见异常,表示尝试保存一个实体时,其某个非空属性为null或未持久化。...
### Hibernate 关系持久化知识点详解 #### 一、前言 Hibernate 是一款强大的对象关系映射(ORM)框架,它简化了 Java 应用程序与关系型数据库之间的交互过程。根据给定文件中的描述,我们可以深入理解 Hibernate ...
10.1. Hibernate object states 10.2. Making objects persistent 10.3. Loading an object 10.4. Querying 10.4.1. Executing queries 10.4.1.1. Iterating results 10.4.1.2. Queries that return tuples 10.4.1.3...
3. **references_single**: 这可能是Hibernate的一些参考文档或指南,帮助开发者理解和使用Hibernate4.x,对于学习和解决问题非常有帮助。 三、实战应用: 在实际开发中,Hibernate4.x常用于企业级应用,例如电子...
Hibernate ORM是一款为Java环境提供的对象/关系映射(Object/Relational Mapping, ORM)解决方案。它主要解决的问题是将对象模型表示的数据映射到关系数据库模型表示的数据,以及将Java数据类型映射到SQL数据类型。...
参考文献(References)则是为开发者提供了进一步学习Hibernate的资源。 Hibernate5.2.11的用户手册是一个非常全面的文档,它覆盖了从基础到高级主题的广泛内容,对于想要深入了解和运用Hibernate来构建稳定、高效...
10.1. Hibernate对象状态(object states) 10.2. 使对象持久化 10.3. 装载对象 10.4. 查询 10.4.1. 执行查询 10.4.1.1. 迭代式获取结果(Iterating results) 10.4.1.2. 返回元组(tuples)的查询 10.4.1.3. 标量(Scalar)...
This article describes an introductory object-oriented finite element program for static and dynamic nonlinear applications. This work can be considered as an extension of the original FEM_Object ...
20.5 AN OBJECT-ORIENTED ARCHITECTURE 684 20.6 DISCUSSION 693 20.7 BIBLIOGRAPHICAL NOTE 694 Chapter 21: Inheritance case study: “undo” in an interactive system 695 21.1 PERSEVERARE DIABOLICUM 695 ...