admin管理员组

文章数量:1550370

ERROR AssertionFailure HHH000099: an assertion failure occurred (this may indicate a bug in Hibernate, but is more likely due to unsafe use of the session): org.hibernate.AssertionFailure: null id in com.j.bean.Driverbean entry (don’t flush the Session after an exception occurs)
org.hibernate.AssertionFailure: null id in com.j.bean.Driverbean entry (don’t flush the Session after an exception occurs)

最终确认问题,是该si的前端,made,driverLicence,写成driveLicence

命名不能规范吗,还要我后台疯狂找错,都了解到缓存底层机制啦!!

终上所述,除去下面的原因,一定是各种各样的配置出错,所谓bug是不存在的,同时一定注意前端传来的值,它可能是罪魁祸首。

如果你的hbm.xml文件主键配置了native

首先这真的是一个hibernate开发bug

具体可参考,讲的好
https://blog.csdn/cpp_lzth/article/details/42104385

我们知道hibernate有缓存机制,这次的问题就出在这里

如果你的hbm.xml文件主键配置了native

就是将主键生成完全交给了hibernate

hibernate底层这里有一个session使用线程不同步的异常将被抛出

举例save方法

hibernate会先将要存的object放到缓存区

然后登记object的一些信息,如主键,用来做持久化。

结果就在这里发生异常,可以强制刷新

所以有null id的说法
有点赶

本文标签: AssertionFailureHibernatesaveBug