数据表中记录明明有,session.get(类.class, id);返回null

2023-03-12,,

出现null的处理思路首先检查数据库中是否真的有这个记录

确实存在的,用接口查一下最大值,也是存在的,数据库连接正常

写sql也可以查得到

然而诡异的事情出现了

难道是一直在用的dao代码出了问题?

   public Article getById(Session session, int id) {
return (Article) session.get(Article.class, id);
}

换一个id试试,,,要死啊,代码没问题啊

实在没办法了,当我把查询hql写为

的时候,终于看到有用的错误信息了

org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.hs.model.SectionModel#0]

啊原来是sectionId外键引用了不存在的section表记录

打开表,一看,那可不

id最小就是1了

把记录修改一下

问题解决

但是这还没有办法解决我的业务问题,未完待续

数据表中记录明明有,session.get(类.class, id);返回null的相关教程结束。

《数据表中记录明明有,session.get(类.class, id);返回null.doc》

下载本文的Word格式文档,以方便收藏与打印。