最近出现了一个很怪的问题,hibernate在执行hql语句的时候,例如“from A as bb where bb.entId='123456'”
当给 entId 传值的时候,若entId ='123456'就可以正常查询;而换成别的entId的时候就会报空指针。
我的疑虑:(1)如果hql语句有误的话,那为何entId ='123456'可以查找到数据;
(2)可为什么再换成另外一个id号就不对了呢?
这条数据在数据库中单独查询正确,但就是执行hql语句的时候报空指针。
当给 entId 传值的时候,若entId ='123456'就可以正常查询;而换成别的entId的时候就会报空指针。
我的疑虑:(1)如果hql语句有误的话,那为何entId ='123456'可以查找到数据;
(2)可为什么再换成另外一个id号就不对了呢?
这条数据在数据库中单独查询正确,但就是执行hql语句的时候报空指针。
Caused by: java.lang.NullPointerException
语句一点特殊性都没有"from A as bb where bb.entId='123456'"
数据库里面有entId='123456'的数据 所以不会报空指针异常数据库里面没有entId='123458' 所以你的查询结果是null,在你的程序中用这个null时就抛了空指针异常。