我们首先看一下异常信息:
- net.sf.hibernate.AssertionFailure: null id in entry (don't flush the Session after
- an exception occurs)
- at net.sf.hibernate.impl.SessionImpl.checkId(SessionImpl.java:2605)
- at net.sf.hibernate.impl.SessionImpl.flushEntity(SessionImpl.java:2429)
- ... ...
遇到这个异常实属不小心所致,最初看到异出的错误信息时我误认为是主键为空所致。一着急竟然把entry当成了entity理解,真是让人笑话^_^。
其实个该异常信息是在提示我们没有为数据中的非空字段设置值。呵呵!看,够笨的吧。怎么会忘记为非空字段设置值呢?当然一般我们是不会犯这样的错。但是需要说的一点是,在数据的设计中比如SqlServer,我们为某个非空字段设置了默认值。如果我们在通过Hibernate增加一条记录的时候我们必须显式的通过setXxx方法为该字段(/属性)赋值(/默认值)。因为在保存之前Hibernate会检查该非空字段对应的实体属性是否为空。我就是忽略了这一点,所以才会造成上面的异常。
如果不想对有默认值的非空字段进行显式赋值的话,我们可以通过xxx.hbm.xml配置文件来实现,也就是在配置文件中给出该字段的默认值。
分享到:
相关推荐
本文将深入探讨Hibernate常见的异常,以及与之相关的依赖库。 首先,我们看到的`java.lang.NoClassDefFoundError`是一个典型的运行时异常,表示在类加载时找不到对应的类定义。这通常意味着在编译时存在所需的类,...
hibernate异常文档.xls hibernate异常文档.xls
org.hibernate.id.IdentifierGenerationException 是一种常见的异常,通常是由于 <id> 元素配置不正确所致。<id> 元素缺少其子元素 <generator></generator> 的配置引起。解决方案是检查 <id> 元素的配置,确保其子...
String hql = "FROM Login login WHERE login.id in (:ids)"; ``` 其中,`:ids`是参数的名称,需要在map中进行设置。 二、setParameter方法的使用 在Hibernate中,使用setParameter方法可以将参数传递给HQL语句。...
《Hibernate Search in Action》这本书深入探讨了Hibernate Search这一强大的全文搜索引擎集成框架,它将全文搜索功能无缝地融入到Java持久层框架Hibernate之中。通过利用Lucene库的强大功能,Hibernate Search为...
Hibernate Search是一个强大的库,它为Hibernate框架提供了全文搜索的功能。全文搜索是一种强大的信息检索方式,可以让用户通过关键词快速定位到存储在大量数据中的相关内容。Hibernate Search库将全文搜索与...
Hibernate In Action 3 第三部分 中文 入门教程
《Hibernate in Action》是一本经典的Java持久化框架Hibernate的实战指南。源码是作者为了配合书中的理论和示例而提供的实践素材,旨在帮助读者深入理解Hibernate的工作原理和使用方式。这里我们将围绕Hibernate的...
《Hibernate in Action》中文版是一本深度探讨Java持久化框架Hibernate的专业书籍,它全面而深入地介绍了如何在实际开发中高效、灵活地使用Hibernate。这本书是针对Java开发者,特别是那些致力于构建数据库驱动应用...
《Hibernate In Action(Java.Persistence.with.Hibernate)》是一本深入探讨Hibernate框架的书籍,源码则是作者为了配合书中理论部分而提供的实践示例。Hibernate是一个流行的开源对象关系映射(ORM)框架,它允许...
当Hibernate尝试保存一个实体时,如果该实体中的某个被标记为`@NotNull`或在映射文件中定义为`not-null="true"`的属性值为null或者指向一个尚未持久化的瞬态(transient)对象,就会抛出此异常。解决方法是确保在...
Hibernate简单实例 Hibernate in Myeclipse,也就是java Web整合开发自学手册第23章的实例!调试了很久终于可运行!现在共享!希望对学习java web的朋友有帮助!直接在myeclipse添加项目,可运行!
在描述中提到的`org.hibernate.PropertyValueException: not-null property references a null or transient value`是Hibernate抛出的一个常见异常,表示尝试保存一个实体时,其某个非空属性为null或未持久化。...
《Hibernate In Action》是一本深度探讨Java持久化框架Hibernate的专业书籍。这本书主要针对J2EE开发者,特别是那些致力于使用Java技术构建数据库驱动应用程序的人群。Hibernate作为Java领域中最为流行的ORM(对象...
《Hibernate in Action》是一本深度探讨Java持久化框架Hibernate的专业书籍,中文版的发布使得更多的中国开发者能够深入了解和掌握这一强大的ORM(对象关系映射)工具。Hibernate是Java开发中的重要组成部分,它极大...
《Hibernate Search in Action》是一本深入探讨Hibernate Search技术的专业书籍,配合源代码一同学习,能够帮助读者更好地理解和应用这项强大的全文检索和分析框架。Hibernate Search是Hibernate ORM的一个扩展,它...
1. `NullPointerException`: 这个异常发生在尝试访问或操作一个`null`引用的对象时。要解决这个问题,开发者应该检查变量是否已初始化,并在使用前确保它们非空。可以使用`if (object != null)`来避免空指针异常。 ...