org.hibernate.PropertyValueException: not-null property references a null or transient value: model.

org.hibernate.PropertyValueException: not-null property references a null or transient value: model.

出了这么一个错误org.hibernate.PropertyValueException: not-null property references a null or transient value: model.TransactionRecord.remark。当时很是费解,因为当时当时在Junit中测试的时候没有任何问题,但是将代码复制到项目中就会出错了呢。当时没有仔细看错误堆栈信息,看到一个not null就以为可能是参数传递时候出了错,然后在调用方法时将参数全部打印输出一遍,但是神奇的是参数没有任何问题,那么问题来了,参数和方法都没有问题到底是哪里错了呢?静下心来吧错误信息重新阅读以下,错误的意思是在TransactionRecord这个类的remark属性是空,引发了这个异常,然后检查了一下映射文件,发现在映射文件中为remark这个属性设置了一个not-null属性为true,然后使用TransactionRecord时没有给remark赋值。将remark的not-null属性去除或者给remark赋值后在运行,这个错误就消失了。

not-null="true"改成not-null="false" 或者是删掉,问题就可以解决了

发布了70 篇原创文章 · 获赞 1 · 访问量 494

猜你喜欢

转载自blog.csdn.net/zhupengqq1/article/details/103943434